GetMenuState 返回3(或者1时),往往是这个菜单不可用导致的

if( AfxGetMainWnd()->GetMenu()->GetMenuState(ID_OP_STARTPR, MF_BYCOMMAND)

== MF_UNCHECKED )

当在菜单项的Update消息处理中,人为指定了不可用。即 “ ID_OP_STARTPR ” 菜单项不可用时,而我们在执行相应的工具栏(对应ID_OP_STARTPR菜单项)按钮,使用到上述的语句是永远得不到预期结果的,因为它只会返回3。

此处不可用是指:在菜单的Update消息处理中,使用了“ pCmdUI->Enable(0); ” 。


MF_UNCHECKED返回值应该是 0;

MF_CHECKED返回值应该是 8;



你可能感兴趣的:(GetMenuState 返回3(或者1时),往往是这个菜单不可用导致的)