16,472
社区成员
发帖
与我相关
我的任务
分享
他不可能总是循环查dlg的状态吧.所以应该这样,最好为菜单关联一个成员变量:
在菜单命令的响应函数中让menu2变灰,在dlg的OK函数中让menu有效,用这个方法可以获得父窗口指针:
((父窗口类名*)(GetParent()))->m_Menu.
void CIMS_PCDlg::OnUpdateMenu2(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if (pTestDlg->IsWindowVisible()) //pTestDlg,是按下menu1后弹出的非模态对话框
{
pCmdUI->Enable(FALSE);
}
else
{
pCmdUI->Enable(TRUE);
}
}
if (dlg.IsWindowVisible()) //这个dlg是非模态对话框,而不是主对话框吧!
{
pCmdUI->Enable(FALSE);
}
else
{
pCmdUI->Enable(TRUE);
}
void CMainFrame::OnUpdateMENU2
{
if(m_indexClA == 0)
pCmdUI->Enable(0);
else
pCmdUI->Enable(1);
}