Structure MSAAMENUINFO (oleacc.h)
Utilisé par les développeurs de serveurs pour exposer les noms des éléments de menu dessinés par le propriétaire.
Syntaxe
typedef struct tagMSAAMENUINFO {
DWORD dwMSAASignature;
DWORD cchWText;
LPWSTR pszWText;
} MSAAMENUINFO, *LPMSAAMENUINFO;
Membres
dwMSAASignature
Type : DWORD
Doit être MSAA_MENU_SIG, qui est défini dans oleacc.h.
cchWText
Type : DWORD
Longueur, en caractères, du texte de l’élément de menu, sans inclure le caractère unicode terminé par un caractère null.
pszWText
Type : LPWSTR
Texte de l’élément de menu, en Unicode, y compris le caractère terminé par une valeur Null Unicode.
Remarques
En associant la structure MSAAMENUINFO à des données d’élément de menu dessinées par le propriétaire, les développeurs de serveurs peuvent exposer les éléments de menu sans avoir à implémenter IAccessible.
La structure MSAAMENUINFO est le premier membre de la structure (ou classe) spécifique à l’application qui contient les données d’un élément de menu dessiné par le propriétaire, pointé par le membre dwItemData de la structure MENUITEMINFO .
La structure MSAAMENUINFO ne peut pas être membre d’une classe qui contient des fonctions virtuelles, car le premier membre de la classe est toujours un pointeur généré par le compilateur vers une table des fonctions virtuelles. Pour contourner ce problème, vous pouvez implémenter une structure qui contient le MSAAMENUINFO en tant que premier membre, et un pointeur vers la classe avec les fonctions virtuelles comme deuxième membre, qui contient les données d’élément dessinées par le propriétaire.
Exemples
Le fragment de code suivant montre la déclaration d’une structure d’informations de menu dessinée par le propriétaire spécifique à l’application qui inclut MSAAMENUINFO :
// Application-specific owner-drawn menu info struct. Owner-drawn data
// is a pointer to one of these. MSAAMENUINFO must be the first
// member.
struct MenuEntry
{
MSAAMENUINFO m_MSAA; // MSAA info - must be first element.
LPTSTR m_pName; // Menu text, for display. NULL for
// separator item.
int m_CmdID; // Menu command ID.
int m_IconIndex; // Index of icon in bitmap.
};
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
En-tête | oleacc.h |
Composant redistribuable | Active Accessibility 1.3 RDK sur Windows NT 4.0 avec SP6 et versions ultérieures et Windows 95 |