
关于MFC菜单变灰不可用的问题
我想让菜单在按下一个菜单时另一个菜单变灰不可用,在按下另一个菜单时这个菜单又变为可用。现在我在程序中添加了这段代码,编译没有问题,但是当运行是却出现错误。CMenu*mm...
我想让菜单在按下一个菜单时另一个菜单变灰不可用,在按下另一个菜单时这个菜单又变为可用。现在我在程序中添加了这段代码,编译没有问题,但是当运行是却出现错误。
CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(1); //指向“通讯”子菜单的指针
CMenu* submenu1 =mmenu->GetSubMenu(0); //指向“设置”子菜单的指针
submenu1->EnableMenuItem(0, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); //使系统设置菜单项无效
submenu->EnableMenuItem(0, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); //使查看串口菜单项无效
submenu->EnableMenuItem(1, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); //使打开串口菜单项无效
submenu->EnableMenuItem(2, MF_BYPOSITION | MF_ENABLED );//使暂停接收菜单项生效
submenu->EnableMenuItem(3, MF_BYPOSITION | MF_ENABLED );//使关闭串口菜单项生效
运行时提示错误,File:afxwin1.in1 line:1030
小弟实在不知道是哪里的问题,请大侠帮忙解决 展开
CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(1); //指向“通讯”子菜单的指针
CMenu* submenu1 =mmenu->GetSubMenu(0); //指向“设置”子菜单的指针
submenu1->EnableMenuItem(0, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); //使系统设置菜单项无效
submenu->EnableMenuItem(0, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); //使查看串口菜单项无效
submenu->EnableMenuItem(1, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); //使打开串口菜单项无效
submenu->EnableMenuItem(2, MF_BYPOSITION | MF_ENABLED );//使暂停接收菜单项生效
submenu->EnableMenuItem(3, MF_BYPOSITION | MF_ENABLED );//使关闭串口菜单项生效
运行时提示错误,File:afxwin1.in1 line:1030
小弟实在不知道是哪里的问题,请大侠帮忙解决 展开
1个回答
展开全部
1.看看资源编译器,按钮是不是禁用了
2.添加ON_UPDATE_COMMAND_UI 消息 然后 enable(true);
2.添加ON_UPDATE_COMMAND_UI 消息 然后 enable(true);
追问
资源编译器?按钮资源应该是没有禁用的,我是有使用按钮资源的。我是基于单文档的,找了一下,只有ON_UPDATA,没有ON_UPDATE_COMMAND_UI 消息,enable(true)写在ON_UPDATA里面吗?小弟是初学者,所以不太明白的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询