Qt——【若按钮点击后无反应,UI界面中已经勾选Checkable属性, 并且调用了按钮的setchecked(false), 但是页面就是不切换状态

几经排查,发现是按钮组的Exclusive属性造成的。Exclusive属性执行后, 当有一个选中,并且没有选择其它按钮时,此按钮一直为选中状态。即使执行了按钮的setchecked(false)。

如果QAbstractButton属于独占组,则不能取消选中它,问题中提供的代码就是这种情况。

这是预期的行为,正如我在另一个问题中解释的那样,它被记录下来了。

您可以尝试更改lambda以删除组上的Exclusive属性,然后取消选中所有按钮,然后恢复该属性。这意味着:

复制代码
btnGroup->setExclusive(false);
for (auto& x : btns) {
    ....
}
btnGroup->setExclusive(true);
相关推荐
ada0_ada117 小时前
Qt的Widgets项目
开发语言·qt
Dovis(誓平步青云)17 小时前
《QT学习第一篇:QT的概述与安装、信号与槽》
开发语言·qt·学习·功能详解
地下核武1 天前
Ubuntu 24.04 在线安装 Qt 6.10.2 后 Qt Creator 无法启动问题记录与解决
linux·qt·ubuntu
史蒂芬_丁1 天前
Qt, C++数据类型扩展问题
数据库·c++·qt
没用的阿_吉1 天前
windows10 Qt5.15.14 msvc2019 编译部署
开发语言·qt
code_计梦星河1 天前
Qt 开发第十五天:规划模块树形视图开发与跨端数据传输
qt
不知名。。。。。。。。1 天前
Qt常用控件
开发语言·qt
深蓝海拓1 天前
基于QtPy (PySide6) 的PLC-HMI工程项目(二)系统规划
笔记·python·qt·学习·plc
二DUAN帝1 天前
态势仿真推演系统 AFSIM+UE 架构选型
qt·ue5·afsim
牵牛老人1 天前
【QML 界面开发实战之:模块化、多QML文件调用与跨语言交互】
qt