PyQT5-QPushButton切换按钮
- """
- QPushButton:切换按钮就是QPsuhButton的一种特殊模式,他有两种状态:按下和未按下。我们在点击的时候切换两种状态,有很多场景会用到这个功能
- Author:dengyexun
- DateTime:2018.11.20
- """
- from PyQt5.QtWidgets import QWidget, QPushButton, QFrame, QApplication
- from PyQt5.QtGui import QColor
- import sys
- class Example(QWidget):
- def __init__(self):
- super().__init__()
- self.initGUI()
- def initGUI(self):
- # 功能区
- self.col = QColor(0, 0, 0) # 颜色句柄
- # 初始化pushButton
- redb = QPushButton('Red', self)
- redb.setCheckable(True)
- redb.move(60, 60)
- # 槽与信号连接.当redb被点击时,传入一个bool值给setColor的pressed参数
- redb.clicked[bool].connect(self.setColor)
- greenb = QPushButton('Green', self)
- greenb.setCheckable(True)
- greenb.move(60, 80)
- greenb.clicked[bool].connect(self.setColor)
- blueb = QPushButton('Blue', self)
- blueb.setCheckable(True)
- blueb.move(60, 100)
- blueb.clicked[bool].connect(self.setColor)
- # QFrame对象
- self.square = QFrame(self)
- self.square.setGeometry(110,110,200,200)
- # 更改QWidget的样式风格
- self.square.setStyleSheet("QWidget {backgroud-color:%s}" % self.col.name())
- # Frame
- self.setGeometry(300, 300, 300, 200)
- self.setWindowTitle("toggle button")
- self.show()
- def setColor(self, pressed):
- """
- 自定义槽函数
- :param pressed: 鼠标被按下的状态
- :return:
- """
- # 得到切换按钮的信息,哪一个信号被触发了
- source = self.sender()
- # 当按下按钮
- if pressed:
- val = 255
- else:
- val = 0
- # 判断这个信号的文本内容
- if source.text() == 'Red':
- self.col.setRed(val)
- elif source.text() == 'Green':
- self.col.setGreen(val)
- else:
- self.col.setBlue(val)
- # 更改QFrame的样式风格,设置背景为特定的颜色
- color = self.col.name() # 样式的背景色编码
- self.square.setStyleSheet("QFrame {background-color:%s}" % self.col.name())
- print('ok')
- if __name__ == '__main__':
- app = QApplication(sys.argv)
- ex = Example()
- sys.exit(app.exec_())
PyQT5-QPushButton切换按钮的更多相关文章
- C# PDF Page操作——设置页面切换按钮
概述 在以下示例中,将介绍在PDF文档页面设置页面切换按钮的方法.示例中将页面切换按钮的添加分为了两种情况,一种是设置按钮跳转到首页.下页.上页或者最后一页,另一种是设置按钮跳转到指定页面.两种方法适 ...
- 纯css实现checkbox开关切换按钮
我们都知道 checkbox 标签默认样式 实在是太low了,故对CheckBox美化很有必要. 现提供两种方式对其进行美化. 方法一 <div class="switch-wrap ...
- Egret 中实现3种状态切换按钮
一.游戏中的常用3种状态按钮 Egret种提供了2种状态切换的按钮ToggleButton. 但是在游戏中常用到3种状态的按钮,比如任务系统的领取.已领取.未领取. 比如下图中宝箱的打开.浏览后打开. ...
- 尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框
尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框 近期正在逐步摸索学习React的用法,尝试着写几个通用型的组件,整体项目还是根据webpack+react+css-me ...
- C# PDF Page操作——设置页面切换按钮 C# 添加、读取Word脚注尾注 C#为什么不能像C/C++一样的支持函数只读传参 web 给大家分享一个好玩的东西,也许你那块就用的到
C# PDF Page操作——设置页面切换按钮 概述 在以下示例中,将介绍在PDF文档页面设置页面切换按钮的方法.示例中将页面切换按钮的添加分为了两种情况,一种是设置按钮跳转到首页.下页.上页或者 ...
- NX二次开发-获取切换按钮的当前状态UF_MB_ask_toggle_state
NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON ...
- pyqt5界面切换
#主要的思路就是创建两个frame(如果有两个以上同理)使用setVisible()函数显示或者隐藏frame 参数是bool值import sys from PyQt5.QtWidgets impo ...
- bootstrap切换按钮点击后显示的颜色
点击按钮后将按钮类库切换为值为btn-success ·· test ·· jquery code ·· $(".tag-checkbox").toggleClass(" ...
- [android] 切换按钮-自定义控件
准备两张图片,按钮背景,上面的小开关 创建一个类MyToggleBtn,继承View 实现三个构造方法,传递上下文, 实现构造方法,传递Context对象,在java代码中实例化时主要使用这个 实现构 ...
随机推荐
- SpringBoot------thymeleaf的使用
1.pom.xml添加相应依赖 <dependency> <groupId>org.springframework.boot</groupId> <artif ...
- 8 -- 深入使用Spring -- 1...4 重写占位符配置器
8.1.5 重写占位符配置器 (PropertyOverrideConfigurer) PropertyOverrideConfigurer是Spring提供的另一个容器后处理器.PropertyOv ...
- ios开发之--tableview单选/多选实现(非tableview的editing状态)及默认选中
实现思路比较简单,这里仅做记录: 直接上代码: 1,实现didSelectRowAtIndexPath方法 -(void)tableView:(UITableView *)tableView didS ...
- ios开发之--理解NSStringDrawingOptions每个选项的用法与意义
typedef NS_OPTIONS(NSInteger, NSStringDrawingOptions) { NSStringDrawingUsesLineFragmentOrigin = < ...
- CentOS7图形界面启动报错unable to connect to X server
以前还可以正常启动图形界面,这次启动失败,报错unable to connect to X server 使用的是oracle用户,因为我是在oracle用户下创建的oracle数据库等 解决办法: ...
- Kali linux 试用:dnsenum
dnsenum的目的是尽可能收集一个域的信息,它能够通过谷歌或者字典件猜测可能存在的域名,以及对一个网段进行反向查询.它可以查询网站的主机地址信息.域名服务器.mx record(函件交换记录),在域 ...
- [XPath] XPath 与 lxml (三)XPath 坐标轴
本章我们将沿用上一章的 XML 示例文档. XPath 坐标轴 坐标轴用于定义当对当前节点的节点集合. 坐标轴名称 含义 ancestor 选取当前节点的所有先辈元素及根节点. ancestor-or ...
- JavaScript的格式--从格式做起,做最严谨的工程师
1.JavaScript的格式: JavaScript区分大小写: JavaScript脚本程序须嵌入在HTML文件中: JavaScript脚本程序中不能包含HTML标记代码:(双引号) 每行写一条 ...
- 基础知识《零》---一张图读懂JDK,JRE,JVM的区别与联系
- LeetCode 29 Divide Two Integers (不使用乘法,除法,求模计算两个数的除法)
题目链接: https://leetcode.com/problems/divide-two-integers/?tab=Description Problem :不使用乘法,除法,求模计算两个数 ...