关于动态添加的菜单栏变灰的问题 我发现用AppendMenu动态添加的菜单栏是disable的,哪怕调用EnableMenuItem也没有办法让变灰的菜单栏enable,不知道大家是怎么解决这个问题的,麻烦解答下,十分感激~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 #define NEW_MENU_ID WM_USER + 100OnRButtonDown(UINT nFlags, CPoint point){ CMenu menu; menu.LoadMenu(IDR_MAINFRAME); CMenu *pTrackMenu = menu.GetSubMenu(0); pTrackMenu->AppendMenu(MF_STRING,NEW_MENU_ID,_T("新菜单")); pTrackMenu->TrackPopupMenu(TPM_LEFTALIGN,point.x,point.y,this,CRect(0,0,200,200));} to lights_joy: 可是这个菜单是动态的生成的,怎么用代码添加事件处理函数呢,我重写了onCommand函数,可是菜单是灰的,调用不到这里~to zgl7903: 忘记说了,我是在主菜单上动态添加,不是动态添加鼠标右键菜单,不知道你遇到过主菜单上动态添加时子菜单变灰的情况么?? 需要加入 ON_UPDATE_COMMAND_UI 命令响应ON_UPDATE_COMMAND_UI(ID_NEW_TEST_ID, OnNewMnueItem)OnNewMnueItem(CCmdUI* pCmdUI){ pCmdUI->Enable();} 后来改了CMainFrame中的m_bAutoMenuEnable就好了 谢谢你们啦 结贴去 tab控件显示问题 继续关于对话框静态文本的输出 MDI中控制子窗体只有一个实例 如何设置右键菜单项为灰色?? 如何改变编辑框的前景色、背景色、边框样式? vc如何调用vc编写的com? vc++6.0 ODBC Access 如何判断当前焦点是否在某一类控件上? 紧急求助:谢了先! VC打印西语信息乱码 List Control麻烦 VC++调试怎么用
#define NEW_MENU_ID WM_USER + 100OnRButtonDown(UINT nFlags, CPoint point)
{
CMenu menu;
menu.LoadMenu(IDR_MAINFRAME);
CMenu *pTrackMenu = menu.GetSubMenu(0);
pTrackMenu->AppendMenu(MF_STRING,NEW_MENU_ID,_T("新菜单"));
pTrackMenu->TrackPopupMenu(TPM_LEFTALIGN,point.x,point.y,this,CRect(0,0,200,200));
}
to zgl7903: 忘记说了,我是在主菜单上动态添加,不是动态添加鼠标右键菜单,不知道你遇到过主菜单上动态添加时子菜单变灰的情况么??
ON_UPDATE_COMMAND_UI(ID_NEW_TEST_ID, OnNewMnueItem)OnNewMnueItem(CCmdUI* pCmdUI)
{
pCmdUI->Enable();
}