首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >[Qt]解决QPushButton的toggled无法触发setvisible

[Qt]解决QPushButton的toggled无法触发setvisible

作者头像
祥知道
发布于 2020-03-10 06:53:00
发布于 2020-03-10 06:53:00
1.5K1
举报
文章被收录于专栏:祥的专栏祥的专栏

原创文章,欢迎转载。转载请注明:转载自 祥的博客

原文链接:http://blog.csdn.net/humanking7/article/details/44095283

发现问题

我想做一个番茄钟软件,顺便学习一下Qt。但是在做的时候发现toggled无法触发setvisible(),对比《C++ GUI Qt4编程》的源码之后发现是一个关于QPushButton的细节问题没有搞清楚。

想完成的效果如下图:


解决方案

QPushButton 必须是 checkable 的,在使用用 Designer 设计时必须选上。

具体操作如下图:


问题探索

默认状况下checkable是不选中的,Button默认为触发按钮 (trigger button),按下去马上弹起来

选中checkable后,Button变成切换按钮 (toggle button),可以有两种状态:按下 / 弹起,这也就是为什么Task List按钮在两幅图中状态的差别。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
新手一枚,在网上找了许久,终于在这看到了解决思路,点个赞!
新手一枚,在网上找了许久,终于在这看到了解决思路,点个赞!
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
[Qt]如何用好QScrollArea
原文链接:http://blog.csdn.net/humanking7/article/details/78559692
祥知道
2020/03/10
2.9K0
【QT】QT界面的美容院 -- QSS
🔥 在网页前端开发领域中,CSS 是一个至关重要的部分,描述了一个网页的 “样式”,从而起到对网页 美化 的作用。
IsLand1314
2025/04/15
5920
【QT】QT界面的美容院 -- QSS
【QT】QT 的窗口坐标 & 信号与槽
🔥 在Qt中坐标系的开始(原点)是左上角(0,0),从在左上角往右依次增加的是x轴,从左上角往下依次增加的是y轴
IsLand1314
2025/01/09
3700
【QT】QT 的窗口坐标 & 信号与槽
[PyQt5]文件对话框QFileDialog的使用
原文链接:https://blog.csdn.net/humanking7/article/details/80546728
祥知道
2020/03/10
3.7K0
Qt使用多线程的一些心得——1.继承QThread的多线程使用方法
Qt有两种多线程的方法,其中一种是继承QThread的run函数,另外一种是把一个继承于QObject的类转移到一个Thread里。 Qt4.8之前都是使用继承QThread的run这种方法,但是Qt4.8之后,Qt官方建议使用第二种方法。两种方法区别不大,用起来都比较方便,但继承QObject的方法更加灵活。这里要记录的是如何正确的创建一个线程,特别是如何正确的退出一个线程。
全栈程序员站长
2022/08/18
3.4K0
Qt使用多线程的一些心得——1.继承QThread的多线程使用方法
Qt5学习笔记——QRadioButton与QButtonGroup[通俗易懂]
QRadioButton是一个可以switch on或off的按钮,对应的状态为checked和unchecked。一组QRadioButton通常用于表示程序中“多选一”的选择,例如单项选择题。在一组radio buttons中,同一时刻只能有一个button处于checked状态,如果用户选择了其他button,原先被选中的button将变为unchecked。
全栈程序员站长
2022/11/17
4.9K0
Qt5学习笔记——QRadioButton与QButtonGroup[通俗易懂]
真正的干货!100多条Qt开发经验,解决你开发各种问题!
首先声明,本文并非原创,纯属搬运,内容来自一位叫做飞扬青春的大神的Gitee主页,主要是为了收藏下面介绍的100多个Qt开发经验。比如qss的ANSI编码、嵌套窗口中主窗口无法接收鼠标移动事件等,又比如我用qss设置窗口样式,但是项目每次重新构建以后,样式表就会不生效等问题,也花了自己不少时间去解决,所以在这里转发大神的经验,留作以后参考和逐条的研究,也分享给更多正在学习Qt或者正在使用Qt进行程序开发的朋友们。
麻烦成了精
2020/11/16
4.4K0
Qt多线程1:QThread
Qt有两种多线程的方法,其中一种是继承QThread的run函数,另外一种是把一个继承于QObject的类转移到一个Thread里。 Qt4.8之前都是使用继承QThread的run这种方法,但是Qt4.8之后,Qt官方建议使用第二种方法。两种方法区别不大,用起来都比较方便,但继承QObject的方法更加灵活。这里要记录的是如何正确的创建一个线程,特别是如何正确的退出一个线程。
全栈程序员站长
2022/09/02
3.1K0
【QT】 控件 -- 按钮类(Button)
🚀 之前我在上一篇文章已经说了 QWidget 涉及到的各种属性/函数/使用方法,针对接下来等下要介绍的 Qt 的各种控件都是有效的啦 !!!
IsLand1314
2025/01/24
4930
【QT】 控件 -- 按钮类(Button)
[QT]获取鼠标坐标以及按键响应
原文链接:https://blog.csdn.net/humanking7/article/details/80707591
祥知道
2020/03/10
4.9K0
[QT]响应键盘事件(附虚拟键值转换函数)
原文链接:https://blog.csdn.net/humanking7/article/details/80700233
祥知道
2020/03/10
3.5K0
Qt Style Sheet实践(一):按钮及关联菜单
导读      正如web前端开发中CSS(Cascade Style Sheet)的作用一样,Qt开发中也可以使用修改版的QSS将逻辑业务和用户界面进行隔离。这样,美工设计人员和逻辑实现者可以各司其职而不受干扰。更重要的是,由于界面和逻辑处理是分离的,低耦合性使得代码重构的工作量可以减少到最小。QSS和CSS的语法几乎一致,除了Qt自身增加的一些属性之外,其余的属性都可以在CSS2或CSS3中找到对应的属性。因此,如果曾经有过CSS的使用经验,那么QSS的使用将游刃有余。关于QSS的使用实践,打算撰写一系
24K纯开源
2018/01/18
5K0
Qt Style Sheet实践(一):按钮及关联菜单
Qt Creator下载和安装(详细教程)
Qt是跨平台的图形开发库,目前由Digia全资子公司 Qt Company 独立运营,官方网址: http://www.qt.io/ 也可以访问Qt项目域名:http://qt-project.org/ Qt本身支持众多操作系统。从通用操作系统Linux、Windows,到手机系统Android、iOS、WinPhone,嵌入式系统支持QNX、VxWorks,应用非常广泛。 基于Qt的软件非常多,其中最知名的要数Linux桌面系统KDE(涵盖无数以K打头的应用软件)。国内WPS for Linux版本、360 for Linux也是使用Qt库开发的界面。只要有C++基础,Qt是很容易学的,而且开发跨平台的程序也容易。目前主流使用的Qt库有Qt4和Qt5两个大版本,下面介绍其在Windows系统里的下载和安装。
全栈程序员站长
2022/08/27
14.6K0
Qt Creator下载和安装(详细教程)
【QT】按钮类控件
QPushButton 继承⾃ QAbstractButton . 这个类是⼀个抽象类. 是其他按钮的⽗类.
YoungMLet
2024/07/16
2260
【QT】按钮类控件
Python:PyQt学习
上面的代码把控件对应的变量名全部作为全局变量。如果要设计稍微复杂一些的程序,就会出现太多的控件对应的变量名。而且这样也不利于代码的模块化。所以,我们通常应该把 一个窗口和其包含的控件,对应的代码全部封装到类中,如下所示:
小简
2023/01/04
11K0
Python:PyQt学习
【QT】常用控件(二)
我们从这个按钮的属性表中可以看到,QPushButton的父类是QAbstractButton,上面是QAbstractButton的父类QWidget,再向上就是QWidget的父类QObject
s-little-monster
2024/10/18
1720
【QT】常用控件(二)
QT(三).电子相册(3)
需要注意的是,这里面定义了一个 Ui_Pic 类 , 这个类我们之前在 pic.h 中见过
franket
2021/09/14
1.2K0
【QT】:QMainWindow 窗口
Qt 中的菜单栏是通过 QMenuBar 这个类来实现的。一个主窗口最多只有一个菜单栏,位于主窗口顶部、主窗口标题栏下面。
IsLand1314
2025/02/18
7020
【QT】:QMainWindow 窗口
【QT】事件系统入门——QEvent 基础与示例
事件本身是 操作系统提供的 机制,Qt 也同样把操作系统事件机制进行了封装拿到了 Qt 中,但由于 事件 对应的代码编写起来不方便,因此 Qt 对于事件机制 又进行了进一步的 封装,就得到了 信号槽
IsLand1314
2025/03/14
3390
【QT】事件系统入门——QEvent 基础与示例
【QT】:QT(介绍、下载安装、认识 QT Creator)
所谓客户端就是直接和用户打交道的一端从程序,就比如 chrome,cctalk,……
IsLand1314
2024/12/20
11.2K0
【QT】:QT(介绍、下载安装、认识 QT Creator)
相关推荐
[Qt]如何用好QScrollArea
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档