Partager via


Structure ACMFILTERCHOOSE (msacm.h)

La structure ACMFILTERCHOOSE contient des informations que L’ACM utilise pour initialiser la boîte de dialogue de sélection de filtre audio de forme d’onde définie par le système. Une fois que l’utilisateur ferme la boîte de dialogue, le système retourne des informations sur la sélection de l’utilisateur dans cette structure.

Syntaxe

typedef struct tACMFILTERCHOOSE {
  DWORD                   cbStruct;
  DWORD                   fdwStyle;
  HWND                    hwndOwner;
  LPWAVEFILTER            pwfltr;
  DWORD                   cbwfltr;
  LPCSTR                  pszTitle;
  char                    szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
  char                    szFilter[ACMFILTERDETAILS_FILTER_CHARS];
  LPSTR                   pszName;
  DWORD                   cchName;
  DWORD                   fdwEnum;
  LPWAVEFILTER            pwfltrEnum;
  HINSTANCE               hInstance;
  LPCSTR                  pszTemplateName;
  LPARAM                  lCustData;
  ACMFILTERCHOOSEHOOKPROC pfnHook;
} ACMFILTERCHOOSE, *PACMFILTERCHOOSE, *LPACMFILTERCHOOSE;

Membres

cbStruct

Taille, en octets, de la structure ACMFILTERCHOOSE . Ce membre doit être initialisé avant qu’une application appelle la fonction acmFilterChoose . La taille spécifiée dans ce membre doit être suffisamment grande pour contenir la structure ACMFILTERCHOOSE de base.

fdwStyle

Indicateurs de style facultatifs pour la fonction acmFilterChoose . Ce membre doit être initialisé avec une combinaison valide des indicateurs suivants avant qu’une application appelle la fonction acmFilterChoose . Les valeurs suivantes sont définies :

Name Description
ACMFILTERCHOOSE_STYLEF_CONTEXTHELP
L’aide contextuelle sera disponible dans la boîte de dialogue. Pour utiliser cette fonctionnalité, une application doit inscrire les constantes ACMHELPMSGCONTEXTMENU et ACMHELPMSGCONTEXTHELP, à l’aide de la fonction RegisterWindowMessage . Lorsque l’utilisateur appelle l’aide, le message inscrit est publié dans la fenêtre propriétaire. Le message contient les paramètres wParam et lParam du message WM_CONTEXTMENU ou WM_CONTEXTHELP d’origine.
ACMFILTERCHOOSE_STYLEF_ENABLEHOOK
Active la fonction de crochet spécifiée dans le membre pfnHook . Une application peut utiliser des fonctions de crochet pour diverses personnalisations, y compris répondre au message MM_ACM_FILTERCHOOSE .
ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATE
Permet à ACM de créer le modèle de boîte de dialogue identifié par les membres hInstance et pszTemplateName .
ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATEHANDLE
Le membre hInstance identifie un bloc de données qui contient un modèle de boîte de dialogue préchargé. Si cet indicateur est spécifié, ACM ignore le membre pszTemplateName .
ACMFILTERCHOOSE_STYLEF_INITTOFILTERSTRUCT
La mémoire tampon pointée vers pwfltr contient une structure WAVEFILTER valide que la boîte de dialogue utilisera comme sélection initiale.
ACMFILTERCHOOSE_STYLEF_SHOWHELP
Un bouton d’aide s’affiche dans la boîte de dialogue. Pour utiliser un fichier d’aide personnalisé, une application doit inscrire la valeur ACMHELPMSGSTRING auprès de la fonction RegisterWindowMessage . Lorsque l’utilisateur appuie sur le bouton d’aide, le message inscrit est publié sur le propriétaire.

hwndOwner

Handle de la fenêtre propriétaire de la boîte de dialogue. Ce membre peut être n’importe quel handle de fenêtre valide ou NULL si la boîte de dialogue n’a pas de propriétaire. Ce membre doit être initialisé avant d’appeler la fonction acmFilterChoose .

pwfltr

Pointeur vers une structure WAVEFILTER . Si l’indicateur ACMFILTERCHOOSE_STYLEF_INITTOFILTERSTRUCT est spécifié dans le membre fdwStyle , cette structure doit être initialisée dans un filtre valide. Lorsque la fonction acmFilterChoose retourne, cette mémoire tampon contient le filtre sélectionné. Si l’utilisateur annule la boîte de dialogue, aucune modification n’est apportée à cette mémoire tampon.

cbwfltr

Taille, en octets, de la mémoire tampon pointée par le membre pwfltr . La fonction acmFilterChoose retourne ACMERR_NOTPOSSIBLE si la mémoire tampon est trop petite pour contenir les informations de filtre ; L’ACM copie également la taille requise dans ce membre. Une application peut utiliser les fonctions acmMetrics et acmFilterTagDetails pour déterminer la plus grande taille requise pour cette mémoire tampon.

pszTitle

Pointeur vers une chaîne à placer dans la barre de titre de la boîte de dialogue. Si ce membre a la valeur NULL, ACM utilise le titre par défaut (c’est-à-dire, « Sélection de filtre »).

szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS]

Mémoire tampon contenant une chaîne terminée par null décrivant la balise de filtre de la sélection de filtre lorsque la structure ACMFILTERTAGDETAILS renvoyée par acmFilterTagDetails. Si l’utilisateur annule la boîte de dialogue, ce membre contient une chaîne null terminée.

szFilter[ACMFILTERDETAILS_FILTER_CHARS]

Mémoire tampon contenant une chaîne terminée par null décrivant les attributs de filtre de la sélection de filtre lorsque la structure ACMFILTERDETAILS renvoyée par acmFilterDetails. Si l’utilisateur annule la boîte de dialogue, ce membre contient une chaîne null terminée.

pszName

Pointeur vers une chaîne pour un nom de filtre défini par l’utilisateur. S’il s’agit d’une chaîne non terminée par null, ACM tente de faire correspondre le nom à un nom de filtre défini par l’utilisateur précédemment enregistré. Si une correspondance est trouvée, la boîte de dialogue est initialisée dans ce filtre. Si une correspondance est introuvable ou si ce membre est une chaîne terminée par null, ce membre est ignoré pour l’entrée. Lorsque la fonction acmFilterChoose retourne, cette mémoire tampon contient une chaîne terminée par null décrivant le filtre défini par l’utilisateur. Si le nom du filtre n’est pas titré (c’est-à-dire que l’utilisateur n’a pas donné de nom pour le filtre), ce membre sera une chaîne null terminée au retour. Si l’utilisateur annule la boîte de dialogue, aucune modification n’est apportée à cette mémoire tampon.

Si l’indicateur ACMFILTERCHOOSE_STYLEF_INITTOFILTERSTRUCT est spécifié par le membre fdwStyle , le membre pszName est ignoré en tant que membre d’entrée.

cchName

Taille, en caractères, de la mémoire tampon identifiée par le membre pszName . Cette mémoire tampon doit comporter au moins 128 caractères. Si pszName a la valeur NULL, ce membre est ignoré.

fdwEnum

Indicateurs facultatifs pour restreindre le type de filtres répertoriés dans la boîte de dialogue. Ces indicateurs sont identiques aux indicateurs fdwEnum pour la fonction acmFilterEnum . Si pwfltrEnum a la valeur NULL, ce membre doit être égal à zéro.

Nom Description
ACM_FILTERENUMF_DWFILTERTAG
Le membre dwFilterTag de la structure WAVEFILTER pointée par le membre pwfltrEnum est valide. L’énumérateur énumère uniquement un filtre conforme à cet attribut.

pwfltrEnum

Pointeur vers une structure WAVEFILTER qui sera utilisée pour restreindre les filtres répertoriés dans la boîte de dialogue. Le membre fdwEnum définit les membres de cette structure qui doivent être utilisés pour les restrictions d’énumération. Le membre cbStruct de cette structure WAVEFILTER doit être initialisé à la taille de la structure WAVEFILTER . Si aucune restriction spéciale n’est souhaitée, ce membre peut avoir la valeur NULL.

hInstance

Gérez vers un bloc de données qui contient un modèle de boîte de dialogue spécifié par le membre pszTemplateName . Ce membre est utilisé uniquement si le membre fdwStyle spécifie l’indicateur ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATE ou ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATEHANDLE ; sinon, ce membre doit avoir la valeur NULL lors de l’entrée.

pszTemplateName

Pointeur vers une chaîne terminée par null qui spécifie le nom du fichier de ressources pour le modèle de boîte de dialogue qui doit être remplacé par le modèle de boîte de dialogue dans aCM. Une application peut utiliser la macro MAKEINTRESOURCE pour les ressources de boîte de dialogue numérotées. Ce membre est utilisé uniquement si le membre fdwStyle spécifie l’indicateur ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATE ; sinon, ce membre doit avoir la valeur NULL lors de l’entrée.

lCustData

Données définies par l’application que l’ACM transmet à la fonction de hook identifiée par le membre pfnHook . Le système transmet les données dans le paramètre lParam du message WM_INITDIALOG .

pfnHook

Pointeur vers une fonction de rappel qui traite les messages destinés à la boîte de dialogue. Une application doit spécifier l’indicateur ACMFILTERCHOOSE_STYLEF_ENABLEHOOK dans le membre fdwStyle pour activer le hook ; dans le cas contraire, ce membre doit avoir la valeur NULL. La fonction de crochet doit retourner FALSE pour passer un message à la procédure de boîte de dialogue standard ou TRUE pour ignorer le message. Le type de fonction de rappel est acmFilterChooseHookProc.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête msacm.h

Voir aussi

ACMFILTERDETAILS

ACMFILTERTAGDETAILS

Gestionnaire de compression audio

Audio Compression Structures

MAKEINTRESOURCE

MM_ACM_FILTERCHOOSE

RegisterWindowMessage

WAVEFILTER

WM_INITDIALOG

acmFilterChoose

acmFilterDetails

acmFilterEnum

acmFilterTagDetails

acmMetrics