IMEMENUITEMINFOW 结构 (imm.h)

包含有关输入法菜单项的信息。

语法

typedef struct tagIMEMENUITEMINFOW {
  UINT    cbSize;
  UINT    fType;
  UINT    fState;
  UINT    wID;
  HBITMAP hbmpChecked;
  HBITMAP hbmpUnchecked;
  DWORD   dwItemData;
  WCHAR   szString[IMEMENUITEM_STRING_SIZE];
  HBITMAP hbmpItem;
} IMEMENUITEMINFOW, *PIMEMENUITEMINFOW, *NPIMEMENUITEMINFOW, *LPIMEMENUITEMINFOW;

成员

cbSize

结构的大小(以字节为单位)。

fType

菜单项类型。 此成员可以具有以下值之一。

含义
IMFT_RADIOCCHECK 如果 hbmpChecked 成员为 NULL,则使用单选按钮标记而不是检查标记显示选中的菜单项。
IMFT_SEPARATOR 菜单项是分隔符。 菜单项分隔符显示为水平分隔线。 在这种情况下, 将忽略 hbmpItemszString 成员。
IMFT_SUBMENU 菜单项是子菜单。

fState

菜单项状态。 此成员可以具有以下一个或多个值:

含义
IMFS_CHECKED 选中菜单项。 有关详细信息,请参阅 hbmpChecked 成员的说明。
IMFS_DEFAULT 菜单项是默认菜单项。 一个菜单只能包含一个以粗体显示的默认菜单项。
IMFS_DISABLED 菜单项处于禁用状态,并且显示为灰色,因此无法选中。 这等效于IMFS_GRAYED。
IMFS_ENABLED 菜单项已启用。 这是默认状态。
IMFS_GRAYED 菜单项处于禁用状态,并且显示为灰色,因此无法选中。 这等效于 IMFS_DISABLED。
IMFS_HILITE 将突出显示菜单项。
IMFS_UNCHECKED 菜单项处于未选中状态。 有关未选中的菜单项的详细信息,请参阅 hbmpUnchecked 成员的说明。
IMFS_UNHILITE 菜单项未突出显示。 这是默认状态。

wID

标识菜单项的应用程序定义的 16 位值。

hbmpChecked

要显示在项旁边(如果选中)的位图的句柄。 如果此成员为 NULL,则使用默认位图。 如果指定了IMFT_RADIOCHECK类型值,则默认位图为项目符号。 否则,它是检查标记。

hbmpUnchecked

要显示在项旁边(如果未选中)的位图的句柄。 如果此成员为 NULL,则不使用位图。

dwItemData

与菜单项关联的应用程序定义值。

szString[IMEMENUITEM_STRING_SIZE]

菜单项的内容。 这是以 null 结尾的字符串。

hbmpItem

要显示的位图的句柄。

注解

注意

imm.h 标头将 IMEMENUITEMINFO 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 imm.h (包括 Immdev.h、Windows.h)

另请参阅

ImmGetImeMenuItems

输入法管理器

输入法管理器结构