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 |
---|---|
|
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. |
|
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 . |
|
Permet à ACM de créer le modèle de boîte de dialogue identifié par les membres hInstance et pszTemplateName . |
|
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 . |
|
La mémoire tampon pointée vers pwfltr contient une structure WAVEFILTER valide que la boîte de dialogue utilisera comme sélection initiale. |
|
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 |
---|---|
|
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 |