释义 |
CMenu::GetMenuState
UINT GetMenuState( UINT nID, UINT nFlags ) const;
返回值: 若指定的项不存在,则返回值为0xFFFFFFFF。若nId 指定的是弹出菜单,那么高位字节包含了弹出菜单的项数,低位字节则包含与弹出菜单相关联的菜单标志。否则,返回值为下列值的掩码(布尔运算 OR)(该掩码描述了nId指定的菜单项的状态):
· | MF_CHECKED | 与MF_UNCHECKED一起用作开关,在项前放置缺省的检测标记。当应用支持检测标记位图(请参阅SetMenuItemBitmaps成员函数)时,将显示“检测标记打开”位图。 | · | MF_DISABLED | 使菜单项无效,以便它不能被选择,但不变灰。 | · | MF_ENABLED | 使菜单项有效,以便它能够被选择,并从变灰的状态中恢复出来。注意该常量的值为0。应用在使用该值时,不应将0作为失败。 | · | MF_GRAYED | 使菜单项无效,以便它不能被选择,并将其变灰。 | · | MF_MENUBARBREAK | 在静态菜单里的新行中或弹出菜单的新列中放置菜单项。新的弹出菜单列与老的菜单列将由垂直分割线分开。 | · | MF_MENUBREAK | 在静态菜单里的新行中或弹出菜单的新列中放置菜单项。列与列之间没有分割线。 | · | MF_SEPARATOR | 绘制一条水平的分割线。它仅仅能用于弹出菜单项。该线不能变灰、无效或高亮度显示。其它的参数将被忽略。 | · | MF_UNCHECKED | 该值的行为如同使用MF_CHECKED来作为一个标记,用于删除项前的检测标记。若应用支持检测标记位图(请参阅SetMenuItemBitmaps成员函数),那么将显示“检测标记关闭”位图。注意该常量的值为0。应用在使用该值时,不应将0认为是失败。 |
参数:nID | 指定了由nFlags决定的菜单项ID号。 | nFlags | 指定了nID的特性,它可以为下列值之一:· | MF_BYCOMMAND | 指定参数给出已存在的菜单项的命令ID号。此为缺省值。 | · | MF_BYPOSITION | 指定参数给出已存在菜单项的位置。第一项的位置是0。 |
|
说明:返回弹出菜单中指定菜单项的状态或项数。
请参阅: ::GetMenuState, CMenu::CheckMenuItem, CMenu::EnableMenuItem |