Поделиться через


Структура MIXERCONTROLDETAILS (mmeapi.h)

Структура MIXERCONTROLDETAILS относится к структурам сведений об элементе управления, получающим или устанавливающим сведения о состоянии элемента управления аудиомикшера. Все элементы этой структуры должны быть инициализированы перед вызовом функций mixerGetControlDetails и mixerSetControlDetails .

Синтаксис

typedef struct tMIXERCONTROLDETAILS {
  DWORD  cbStruct;
  DWORD  dwControlID;
  DWORD  cChannels;
  union {
    HWND  hwndOwner;
    DWORD cMultipleItems;
  } DUMMYUNIONNAME;
  DWORD  cbDetails;
  LPVOID paDetails;
} MIXERCONTROLDETAILS, *PMIXERCONTROLDETAILS, *LPMIXERCONTROLDETAILS;

Члены

cbStruct

Размер структуры MIXERCONTROLDETAILS в байтах . Размер должен быть достаточно большим, чтобы содержать базовую структуру MIXERCONTROLDETAILS . При возврате mixerGetControlDetails этот элемент содержит фактический размер возвращаемой информации. Возвращаемые сведения не будут превышать запрошенный размер и не будут меньше базовой структуры MIXERCONTROLDETAILS .

dwControlID

Идентификатор элемента управления, для которого требуется получить или задать свойства.

cChannels

Количество каналов, по которым требуется получить или задать свойства элемента управления. Определены следующие значения:

Имя Описание
0
Используйте это значение, если элемент управления является элементом управления MIXERCONTROL_CONTROLTYPE_CUSTOM.
1
Используйте это значение, если элемент управления является элементом управления MIXERCONTROL_CONTROLF_UNIFORM или когда приложению необходимо получить и задать все каналы, как если бы они были единообразными.
MIXERLINE cChannels
Используйте это значение, если свойства элемента управления ожидаются во всех каналах строки.
 

Приложение не может указать значение, которое находится в диапазоне от 1 до количества каналов для звуковой линии. Например, недопустимо указывать 2 или 3 для четырехканаловой линии. Этот элемент не может иметь значение 0 для ненастраиваемых типов элементов управления.

Этот элемент не может иметь значение 0 для ненастраиваемых типов элементов управления.

DUMMYUNIONNAME

DUMMYUNIONNAME.hwndOwner

Дескриптор окна, которому принадлежит пользовательское диалоговое окно для элемента управления микшера. Этот элемент используется, когда флаг MIXER_SETCONTROLDETAILSF_CUSTOM указан в функции mixerSetControlDetails .

DUMMYUNIONNAME.cMultipleItems

Количество нескольких элементов на канал, для которого требуется получить или задать свойства. Определены следующие значения:

Имя Описание
0
Используйте это значение для всех элементов управления, кроме MIXERCONTROL_CONTROLF_MULTIPLE или элемента управления MIXERCONTROL_CONTROLTYPE_CUSTOM.
Элемент MIXERCONTROL cMultipleItems
Используйте это значение, если класс элемента управления MIXERCONTROL_CONTROLF_MULTIPLE.
ЭЛЕМЕНТ MIXERCONTROLDETAILS hwndOwner
Используйте это значение, если элемент управления является элементом управления MIXERCONTROL_CONTROLTYPE_CUSTOM и для функции mixerSetControlDetails задан флаг MIXER_SETCONTROLDETAILSF_CUSTOM.

В этом случае элемент hwndOwner перекрывается с cMultipleItems, предоставляя значение дескриптора окна.

 

При использовании элемента управления MIXERCONTROL_CONTROLTYPE_CUSTOM без флага MIXERCONTROL_CONTROLTYPE_CUSTOM укажите ноль для этого элемента.

Приложение не может указать значение, отличное от значения, указанного в элементе cMultipleItems структуры MIXERCONTROL для элемента управления MIXERCONTROL_CONTROLF_MULTIPLE.

cbDetails

Размер в байтах одной из используемых структур сведений:

Имя Описание
MIXERCONTROLDETAILS_BOOLEAN
Логическое значение для элемента управления звуковой линией.
MIXERCONTROLDETAILS_LISTTEXT
Перечисление текстового буфера для элемента управления звуковой строкой. Сведения о соответствующей структуре сведений для конкретного элемента управления см. в разделе Типы элементов управления.
MIXERCONTROLDETAILS_SIGNED
Значение со знаком для элемента управления звуковой строкой.
MIXERCONTROLDETAILS_UNSIGNED
Неподписаемое значение для элемента управления звуковой строкой.

paDetails

Указатель на массив из одной или нескольких структур, в которых извлекаются или задаются свойства для указанного элемента управления.

Для элементов управления MIXERCONTROL_CONTROLF_MULTIPLE размер этого буфера должен быть произведением элементов cChannels, cMultipleItems и cbDetails структуры MIXERCONTROLDETAILS . Для элементов управления, отличных от MIXERCONTROL_CONTROLF_MULTIPLE типов, размер этого буфера является произведением элементов cChannels и cbDetails структуры MIXERCONTROLDETAILS .

Для элементов управления, отличных от MIXERCONTROL_CONTROLF_MULTIPLE типов, размер этого буфера является произведением элементов cChannels и cbDetails структуры MIXERCONTROLDETAILS . Для элементов управления, отличных от MIXERCONTROL_CONTROLF_MULTIPLE типов, размер этого буфера является произведением элементов cChannels и cbDetails структуры MIXERCONTROLDETAILS .

Для элементов управления, которые являются MIXERCONTROL_CONTROLF_MULTIPLE типами, массив можно рассматривать как двумерный массив, который является основным каналом. То есть предоставляются все несколько элементов для левого канала, затем все несколько элементов для правого канала и т. д.

Для элементов управления, отличных от MIXERCONTROL_CONTROLF_MULTIPLE типов, каждый индекс элемента эквивалентен отсчитываемого от нуля канала, на который он влияет. То есть paDetails[0] — для левого канала, а paDetails[1] — для правого канала.

Если элемент управления является MIXERCONTROL_CONTROLTYPE_CUSTOM элементом управления, этот элемент должен указывать на буфер, который по крайней мере достаточно велик, чтобы содержать размер в байтах, заданный элементом cbCustomData структуры MIXERCONTROL.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть mmeapi.h

См. также раздел

Структуры аудиомикшеров

Аудио микшеры

MIXERCONTROL

mixerGetControlDetails

mixerSetControlDetails