Win32 菜单添加复选标记和单选标记
在菜单中添加复选标记用CheckMenuItem函数
CheckMenuItem函数原型:
DWORD
WINAPI
CheckMenuItem(
_In_ HMENU hMenu, //菜单句柄
_In_ UINT uIDCheckItem, //菜单ID
_In_ UINT uCheck); //复选标记MF_CHECKED(添加复选标记)和MF_UNCHECKED(取消复选标记)
实例:
LRESULT MyWnd::OnCommand(DWORD dwID, DWORD dwEnter, HWND hCtrlWnd)
{
HMENU hMenu = GetMenu(m_hWnd); //获得窗口菜单句柄
HMENU hItem = GetSubMenu(hMenu, 1);//获得第二个子菜单项的句柄 switch (dwID)
{
case ID_TOOBAR_MENU:
{
//判断是否有复选标记,如果有就取消复选标记,没有就添加复选标记
if (CheckMenuItem(hItem, ID_TOOBAR_MENU, MF_CHECKED)&MF_CHECKED)
CheckMenuItem(hItem, ID_TOOBAR_MENU, MF_UNCHECKED); break;
}
case ID_STAT_MENU:
{ if (CheckMenuItem(hItem, ID_STAT_MENU, MF_CHECKED)&MF_CHECKED)
CheckMenuItem(hItem, ID_STAT_MENU, MF_UNCHECKED); break;
} case ID_MENU_MENU:
{
if (CheckMenuItem(hItem, ID_MENU_MENU, MF_CHECKED)&MF_CHECKED)
CheckMenuItem(hItem, ID_MENU_MENU, MF_UNCHECKED); break;
} }
return 0;
}
在菜单中添加单选标记用CheckMenuRadioItem函数
CheckMenuRadioItem函数原型:
BOOL
WINAPI
CheckMenuRadioItem(
_In_ HMENU hmenu, //菜单句柄
_In_ UINT first, //第一个菜单项ID
_In_ UINT last, //最后一个菜单项ID
_In_ UINT check, //要标记的菜单项ID
_In_ UINT flags); //单选标记MF_BYCOMMAND
实例:
//菜单ID号要是连续的Id号
#define ID_TOOBAR_MENU 40027
#define ID_STAT_MENU 40028
#define ID_MENU_MENU 40029
LRESULT MyWnd::OnCommand(DWORD dwID, DWORD dwEnter, HWND hCtrlWnd)
{
HMENU hMenu = GetMenu(m_hWnd);
HMENU hItem = GetSubMenu(hMenu, 1); switch (dwID)
{
case ID_TOOBAR_MENU:
{ CheckMenuRadioItem(hItem, ID_TOOBAR_MENU, ID_MENU_MENU, ID_TOOBAR_MENU, MF_BYCOMMAND);
break;
}
case ID_STAT_MENU:
{ CheckMenuRadioItem(hItem, ID_TOOBAR_MENU, ID_MENU_MENU, ID_STAT_MENU, MF_BYCOMMAND);
break;
} case ID_MENU_MENU:
{ CheckMenuRadioItem(hItem, ID_TOOBAR_MENU, ID_MENU_MENU, ID_MENU_MENU, MF_BYCOMMAND);
break;
} }
return 0;
}
效果图:
Win32 菜单添加复选标记和单选标记的更多相关文章
- Bootstrap 表单和图片 (内联表单,表单合组,水平排列,复选框和单选框,下拉列表,校验状态,添加额外的图标,控制尺寸,图片)
一.表单 基本格式 注:只有正确设置了输入框的 type 类型,才能被赋予正确的样式. 支持的输入框控件 包括:text.password.datetime.datetime-local.date.m ...
- 【三石jQuery视频教程】02.创建 FontAwesome 复选框和单选框
视频地址:http://v.qq.com/page/m/8/c/m0150izlt8c.html 大家好,欢迎来到[三石jQuery视频教程],我是您的老朋友 - 三生石上. 今天,我们要通过基本的H ...
- Jquery学习笔记:操作form表单元素之二(复选框和单选框)
在上面文章的基础上,我们介绍如何操作表单元素中的 复选框和单选框. 一.复选框 <label> <input type="checkbox" id="i ...
- CheckedListBoxControl 实现复选框的单选与多选功能
由于工作需要,需要实现复选框的单选与多选功能,找了好多资料都不是很全,经过两天苦苦的挖挖挖,终于完成啦O(∩_∩)O哈哈~ 用DEV控件中的CheckedListBoxControl控件,当然VS中的 ...
- Qt之QHeaderView添加复选框
简述 前面分享了QTableView中如何添加复选框.本节主要介绍QTableView中的表头-QHeaderView添加复选框的功能,下面以水平表头为例,垂直表头类似! 简述 效果 QHeaderV ...
- 如何让checkbox复选框只能单选
function框架div 如何让checkbox复选框只能单选 在项目开发中遇到一个这样的问题,要让一列复选框架在任何时间段内只能选择一个. 有人说怎么不用单选框了,因为单选框一旦选择了就不能取消选 ...
- 组合框里添加复选框的方法(使用勾选的假象,用图片代替而已,并非QT原生支持)
组合框可以看作是列表框和文本框的组合,因其占据的空间少,使用操作方便,常被界面设计人员用于界面开发设计中,在有限个输入的条件下,组合框常用来代替文本框,这样从用户使用角度来看,更趋人性化,所见即所得. ...
- QListWidget的QComboBox下拉列表添加复选框及消息处理
要在QComboBox下拉列表项中添加复选框,并进行消息处理,在网上搜索了很久没有找到太多有用的信息和实际的例子,但从中还是找到了一些提示性的资料,根据这些简短的介绍,最终实现了这个功能. QComb ...
- 把复选框变成单选框(prop,attr的区别)
如果项目中需要统一样式的话,有可能会遇到把复选框变成单选框的需求. 下面是用jquery的简单实现 $(function(){ $("input[type='checkbox']" ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 添加复选框
jQuery EasyUI 数据网格 - 添加复选框 本实例演示如何放置一个复选框列到数据网格(DataGrid).通过复选框,用户将可以选择 选中/取消选中 网格行数据. 为了添加一个复选框列,我们 ...
随机推荐
- STM32 CubeMX 学习:06-配置DMA
--- title: mcu-stm32-cube-06-配置DMA date: 2020-05-31 16:39:05 categories: tags: - stm32 - cubeMx - dm ...
- opengauss Need repair修复
问题描述:opengauss集群在做切换的时候,或者增删节点的时候,很容易发生节点repair,找不到主库的情况,这种情况需要把主库使用primary角色启动,然后build重建从库,就可以恢复集群 ...
- 坚果云与floccus实现Chrome书签国内跨设备、跨平台同步
本文介绍基于floccus插件与坚果云协同使用的方法,对浏览器的书签进行实时在线同步的操作. 在工作与学习中,我们时常希望在不同浏览器之间实现书签的同步:而一些传统的浏览器书签同步方案,或多或 ...
- Python通过GPIO从DHT11温度传感器获取数据
Python通过GPIO从DHT11温度传感器获取数据 设备:树莓派4B.DHT11.杜邦线 DHT11 DHT11是一款有已校准数字信号输出的温湿度传感器. 其精度湿度±5%RH, 温度±2℃,量程 ...
- Aspose Excel 单元格合并后边框显示不全
/// <summary> /// 解决合并后的单元格没有边框,设置合并单元格格式,让合并过的单元格中每一个单元格上都添加上加边框的样式 /// </summary> /// ...
- 自动化车间3D可视化设计思路
自动化车间3D可视化设计思路 随着国内制造业企业的高速发展,再加上政策支持,高效的生产模式和先进的管理方式越来越受到企业重视.更多的企业将工业信息化技术进行广泛的应用,比如MES系统.数字孪生以及生产 ...
- 图扑低代码数字孪生 Web SCADA 智慧钢厂
2024 年 4 月,中国钢铁工业协会发布了<钢铁行业数字化转型评估报告(2023年)>(以下简称<报告>).<报告>指出,绝大部分钢铁企业建立了数字化转型相关管理 ...
- PowerShell 使用 Azure
PowerShell 使用 Azure Azure 提供了三种管理工具: Azure 门户:Azure 门户是一个网站,可在其中创建.配置和更改 Azure 订阅中的资源,该门户是一个图形用户界面 ( ...
- MySQL 递归查询实践总结
MySQL复杂查询使用实例 By:授客 QQ:1033553122 表结构设计 SELECT id, `name`, parent_id FROM `tb_testcase_suite` 说明: ...
- manim边学边做--Table
表格是一种常见的数据展示形式,manim提供了Table模块专门用于显示表格形式的数据.表格Table和上一节介绍的矩阵Matrix都是用来显示二维数据的,不过,Table的表现力更强,比如,它可以显 ...