MSAAMENUINFO 结构 (oleacc.h)

由服务器开发人员用于公开所有者绘制的菜单项的名称。

语法

typedef struct tagMSAAMENUINFO {
  DWORD  dwMSAASignature;
  DWORD  cchWText;
  LPWSTR pszWText;
} MSAAMENUINFO, *LPMSAAMENUINFO;

成员

dwMSAASignature

类型: DWORD

必须是 oleacc.h 中定义的MSAA_MENU_SIG。

cchWText

类型: DWORD

菜单项的文本长度(以字符为单位), 不包括 以 null 结尾的 Unicode 字符。

pszWText

类型: LPWSTR

菜单项的文本(以 Unicode 为单位), 包括 以 null 结尾的 Unicode 字符。

注解

通过将 MSAAMENUINFO 结构与所有者绘制的菜单项数据相关联,服务器开发人员可以公开菜单项,而无需实现 IAccessible

MSAAMENUINFO 结构是应用程序特定结构 (或类) 的第一个成员,该结构包含所有者绘制的菜单项的数据,MENUITEMINFO 结构的 dwItemData 成员指向该数据。

MSAAMENUINFO 结构不能是包含虚拟函数的类中的成员,因为类的第一个成员始终是编译器生成的指向虚拟函数表的指针。 若要解决此问题,可以实现一个结构,该结构包含 MSAAMENUINFO 作为第一个成员,并实现指向类的指针,其中虚拟函数作为第二个成员,其中包含所有者绘制的项数据。

示例

以下代码片段显示了应用程序特定的所有者绘制的菜单信息结构的声明,其中包括 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.
};

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 oleacc.h
可再发行组件 具有 SP6 及更高版本和 Windows 95 的 Windows NT 4.0 上的 Active Accessibility 1.3 RDK

另请参阅

公开 Owner-Drawn 菜单项

IAccessible