qt QButtonGroup里面的button,设置非checkde状态,而不是通过设置其他按钮的形式

通常我们使用QButtonGroup都是为了按钮挥斥,选择一个按钮然后其他按钮恢复非选择状态。

那么我们怎么通过代码来设置当前选择按钮设为非选择状态呢?

可能你会说很简单直接这样

pButton->setChecked(false);

执行当前代码后,会发现按钮还是处于选择状态,其样式并没有改变。

这是为什么呢

QButtonGroup默认是互斥状态,也就是里面只只能有一个按钮处于选择状态。当选择另一个按钮另一个按钮自动处于非选择状态

而且不能通过点击当前选择按钮来取消当前按钮的选择状态

必须通过一个按钮的选择来替换另一个按钮

那应该怎么取消当前按钮选择状态而不是以点击另一个按钮的形式呢

通过下面代码即可实现

btnGroup.setExclusive(false);
pButton->setChecked(false);
btnGroup.setExclusive(true);

 

先取消QButtonGroup的互斥状态,再设置按钮为非选择状态即可实现想要的效果。

posted @   beautifulday  阅读(3646)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
历史上的今天:
2015-12-29 c# 方法重载
2015-12-29 c# propertyGrid下拉选项
点击右上角即可分享
微信分享提示