c++ - 是否可以将单选按钮标记更改为“CheckMenuRadioItem()”留下的复选标记?
问题描述
我有一组菜单项,它们的行为必须与单选按钮的行为完全相同(一旦选择了一个,其他的就不会被标记),但要求是使用复选标记而不是单选按钮标记。有没有可能修改CheckMenuRadioItem()
函数使用的标记的方法?
解决方案
@AdrianMole 是对的。但是CheckMenuItem
,在后续版本中可能会更改或不可用。相反,使用SetMenuItemInfo
.
以下是如何实现此目的的示例:
case ID_MENU_ITEM1:
hMenu = GetMenu(hWnd);
mii.fState = MF_CHECKED;
SetMenuItemInfo(hMenu, ID_MENU_ITEM1, FALSE, &mii);
mii.fState = MF_UNCHECKED;
SetMenuItemInfo(hMenu, ID_MENU_ITEM2, FALSE, &mii);
SetMenuItemInfo(hMenu, ID_MENU_ITEM3, FALSE, &mii);
break;
case ID_MENU_ITEM2:
hMenu = GetMenu(hWnd);
mii.fState = MF_CHECKED;
SetMenuItemInfo(hMenu, ID_MENU_ITEM2, FALSE, &mii);
mii.fState = MF_UNCHECKED;
SetMenuItemInfo(hMenu, ID_MENU_ITEM1, FALSE, &mii);
SetMenuItemInfo(hMenu, ID_MENU_ITEM3, FALSE, &mii);
break;
case ID_MENU_ITEM3:
hMenu = GetMenu(hWnd);
mii.fState = MF_CHECKED;
SetMenuItemInfo(hMenu, ID_MENU_ITEM3, FALSE, &mii);
mii.fState = MF_UNCHECKED;
SetMenuItemInfo(hMenu, ID_MENU_ITEM1, FALSE, &mii);
SetMenuItemInfo(hMenu, ID_MENU_ITEM2, FALSE, &mii);
break;
推荐阅读
- pyspark - 将 Informatica 转换转换为 Pyspark
- python - 如何在博客作者上实现“关注”功能
- python-3.x - 如何根据可用性将 skean 管道应用于功能列表
- python - 如何更正此 ValueError?
- python - 在 Pandas 中使用读取剪贴板时,Nan 行值发生了变化
- java - 导出 WAR 时的问题 - Maven 项目
- ios - Ionic cordova build iOS 没有创建 build 文件夹并得到 sass gulp 错误
- python - 将列值分离到数据框中的新字段中
- python - Paramiko模块使用python长时间无操作导致SSHException: Server connection drop错误
- python - 图像堆栈中的唯一颜色(4d numpy 数组)