MFC设置单选按钮点击自己可以可选和不可选

mfc是c++的一个框架,可谓是经久不衰。最近博主遇到一个问题,就是单选按钮点击自己可以设置可选和不可选,貌似类似复选框一样,但领导分发的任务上要求的是用单选按钮实现复选框这种类似功能,实现效果类似如下图:

其中第一行按钮为1组,第二行按钮为1组

问题解决方案

对于每个按钮设置一个flag变量,用数组放进去,如下面代码

cpp 复制代码
bool m_flag[5];
for(int i = 1;i<5;i++)
	m_flag[i] = false;

单选按钮里单击事件只需要这样写就行了

cpp 复制代码
void Cnormal3Dlg::OnBnClickedRadio1()
{
	// TODO: 在此添加控件通知处理程序代码


	
	(CBUtton*)GetDlgITem()IDC_RADIO1->SetCheck(!m_Flag[1]); //
	m_flag[1] = !m_flag[1];

}

总结

如果在mfc中设置单选按钮点击自身可以实现可选与不可选,那么只需要设置一个flag数组变量,每次单击触发时,将其反制一下就行了。

相关推荐
清水白石0085 小时前
Python 异步编程深度解析:Cancellation 到底是异常还是控制信号?从 asyncio 取消机制到企业级事务设计最佳实践
开发语言·python
kolyle6 小时前
万级 QPS 下的 Token 分发系统架构:从 0 到 1 跑通 AI 时代的“水电煤“
开发语言·人工智能·系统架构·token·qps·极智词元·大模型私有化部署
caoerzhong6 小时前
JeeWMS 开源仓库管理系统 GPL-3.0 合规指南:Java WMS 二次开发前必须弄清的授权边界
java·开发语言·开源·vue
Patrick在香港6 小时前
Python 审计香港开放数据目录:两个端点差 10 倍,只有 9.3% 的资源标了「最后修改时间」
开发语言·数据库·python·数据分析·api·数据治理·开放数据
Sylvia33.6 小时前
火星数据体育API|一站式接入足球篮球电竞等18+项目实时数据
java·开发语言·python·websocket·游戏
Data_Journal7 小时前
使用 AutoScraper 进行网页抓取:分步教程
大数据·开发语言·数据库·python·scrapy
yume_sibai7 小时前
12-Rust 性能优化指南(性能分析 + 内存优化 + SIMD + 并发优化 + 编译器优化 + 基准测试)
开发语言·性能优化·rust
萧瑟余晖7 小时前
Hibernate 核心原理与架构详解
开发语言·架构·hibernate
爱喝水的鱼丶7 小时前
SAP-ABAP:SAP MM 模块物料主数据批量导入与增强开发:字段扩展、校验逻辑与批量导入工具开发
开发语言·性能优化·sap·abap·增强·经验交流·mm
geovindu7 小时前
rust:Builder Pattern
开发语言·设计模式·rust·建造者模式