CWnd::OnMenuSelect

afx_msg void OnMenuSelect( UINT nItemID, UINT nFlags HMENU hSysMenu );

参数:
nItemID标识了被选中的项。如果选中项是一个菜单项,则nItemID包含了菜单项ID。如果选中项包含了弹出菜单,则nItemID包含了弹出菜单索引,而hSysMenu中包含了主菜单(用户点击的)的句柄。
nFlags包含下列菜单标志的组合:
·MF_BITMAP该项是位图。
·MF_CHECKED该项被选中。
·MF_DISABLED该项被禁止。
·MF_GRAYED该项被变灰。
·MF_MOUSESELECT该项是用鼠标选中的。
·MF_OWNERDRAW该项是一个自画项。
·MF_POPUP该项包含了一个弹出菜单。
·MF_SEPARATOR该项是一个菜单分隔符。
·MF_SYSMENU该项包含在控制菜单中。
hSysMenu如果nFlags中包含了MF_SYSMENU,标识了与消息相关的菜单。如果nFlags中包含了MF_POPUP,则标识了主菜单的句柄。如果nFlags中既没有MF_SYSMENU也没有MF_POPUP,则没有使用。

说明:
如果CWnd对象与一个菜单相关联,则当用户选择一个菜单项时,框架调用OnMenuSelect。
如果nFlags中为0xFFFF并且hSysMenu为0,则Windows已经因为用户按下ESC键或在菜单外点击而关闭了菜单。
注意 框架调用这个成员函数以允许你的应用程序处理一个Windows消息。传递给你的成员函数的参数反映了接收到消息时框架接收到的参数。如果你调用了这个函数的基类实现,则该实现将使用最初传递给消息的参数(而不是你提供给这个函数的参数)。

请参阅:WM_MENUSELECT