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

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

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

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

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

复制代码
btnGroup->setExclusive(false);
for (auto& x : btns) {
    ....
}
btnGroup->setExclusive(true);
相关推荐
csgo打的菜又爱玩2 小时前
11.JobManager 启动流程总结
大数据·开发语言·qt·microsoft·flink
我在人间贩卖青春3 小时前
重学Qt——Qt基础认知
qt
CSCN新手听安4 小时前
【Qt】Qt窗口(七)QColorDialog颜色对话框,QFileDialog文件对话框的使用
开发语言·c++·qt
我在人间贩卖青春4 小时前
重学Qt——GUI程序设计
qt
草莓熊Lotso5 小时前
Python 入门必吃透:函数、列表与元组核心用法(附实战案例)
大数据·服务器·开发语言·c++·人工智能·python·qt
茉莉玫瑰花茶15 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
十五年专注C++开发17 小时前
浅谈LLVM
开发语言·c++·qt·clang·llvm
小短腿的代码世界18 小时前
Qt数据库编程深度解析:从SQL基础到ORM架构设计
数据库·sql·qt
CSCN新手听安18 小时前
【Qt】Qt窗口(六)QMessageBox消息对话框的使用
开发语言·c++·qt
爱看书的小沐19 小时前
【小沐学WebGIS】基于Cesium.JS与jsbsim联动三维飞行仿真(OpenGL、Cesium.js、Three.js)
c++·qt·three.js·opengl·cesium·jsbsim