GUI学习之八——复选框QCheckBox的学习总结
一.描述
a.QCheckBox一般用于给用户提供若干选项中多个选择时的使用
b.控件左侧有一个方框来显示控件被选中。
c.复选框是有三种状态的
二.使用
1.创建
复选框的创建和常规的按钮创建方式是一样的,直接创建就可以了
import sys
from PyQt5.Qt import *
app = QApplication(sys.argv)
window = QWidget()
window.resize(800,600)
btn_1 = QCheckBox('Python',window)
btn_2 = QCheckBox('C++',window)
btn_3 = QCheckBox('Java',window)
btn_1.move(100,200)
btn_2.move(100,250)
btn_3.move(100,300)
btn_3.setTristate(True)
window.show()
sys.exit(app.exec_())
复选框创建
2.三态
复选框有三种状态,(第三种状态的启用是要设定的)第三种状态的效果是这样的

要想启用第三种状态,代码是这样的
btn.setTristate(True) #设置启用三态
btn.isTristate() #获取是否启用三态
3.状态设置
复选框是有setChecked()这个功能的,但是由于它存在第三种状态,真对存在第三种状态的按钮,可以设置其状态
btn.setCheckState(Qt.PartiallyChecked) #设置按钮状态
Qt.Unchecked #未选中
Qt.Checked #选中
Qt.PartiallyChecked #三态选中状态
btn.checkState() #获取状态——0,未选中;1-三态选中;2-选中
用直接设置的方法也是可以的
btn.setChecked(True) #设置按钮被选中
btn.isChecked() #获取按钮是否被选中
4.信号
复选框除了继承的信号为,还有一个常用的信号——状态切换
btn.stateChanged.connect(lambda state:print(state))
状态发生改变的时候会发送信号,信号带有int类的参数,描述的是按钮的状态:0——为选中;1——三态的选中;2——正常选中。
GUI学习之八——复选框QCheckBox的学习总结的更多相关文章
- 复选框QCheckBox
复选框一共有三种状态:全选中.半选中和无选中.若一个父选项的子选项全部为选中状态,则该父选项为全选中:若子选项全部为无选中状态,则该父选项为无选中状态:若子选项既有全选中和无选中状态,则该父选项为半选 ...
- 自定义实现 PyQt5 下拉复选框 ComboCheckBox
一.前言 由于最近的项目需要具有复选功能,但过多的复选框会影响界面布局和美观,因而想到把 PyQt5 的下拉列表和复选框结合起来,但在 PyQt5 中并没有这样的组件供我们使用,所以想要自己实现一个下 ...
- CSS学习笔记三:自定义单选框,复选框,开关
一点一点学习CCS,这次学习了如何自定义单选框,复选框以及开关. 一.单选框 1.先写好body里面的样式,先写几个框 <body> <div class="radio-1 ...
- Python3+Selenium3+webdriver学习笔记8(单选、复选框、弹窗处理)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记8(单选.复选框.弹窗处理)''' from selenium ...
- 通过编写串口助手工具学习MFC过程——(五)添加CheckBox复选框
通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...
- 3.Android之单选按钮RadioGroup和复选框Checkbox学习
单选按钮和复选框在实际中经常看到,今天就简单梳理下. 首先,我们在工具中拖进单选按钮RadioGroup和复选框Checkbox,如图: xml对应的源码: <?xml version=&quo ...
- BootStrap2学习日记10---单选框和复选框
<label>选择你的性别</label> <label class="radio"> <input type="radio&q ...
- ExtJS4.2学习(五)表格渲染与复选框
鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-11-10/174.html --------------- ...
- 【MFC学习笔记-作业5-小数据库】【单选框,复选框,滚动条,列表框】
界面已经实现完毕. 要完成的操作就是1.性别分组(2选1) 2.属性勾选 3.年龄通过滚动条调整 4.职称通过下方的列表框选择 5.输入姓名 6.存入左方的列表框 7.当选择左方列表框的人时,可以显示 ...
随机推荐
- spring boot apollo demo
controller 监听器,监听配置实时变化 src/main/resources---->META-INF---->app.properties apollo 界面 测试访问 : 实时 ...
- 另类P、V操作问题-详细图解
问题模型 有一个系统,定义如下P.V操作: P(s): s.count--; then 将本进程插入相应队列末尾等待; V(s): s.count++; then 从相应等待队列队尾唤醒一个进程,将其 ...
- Eclipse配置“运行时依赖路径”
Python项目 本地有项目A,项目B,项目A,依赖项目B,在eclipse中,将项目B的路径添加到项目A的PYTHONPATH中. Java项目Build path(略)
- 新的blog站地址
自己用Jekyll搭建了一个静态blog网站 以后的blog随笔就更新在:https:/blog.hudunsec.cn
- JSTL的使用
使用JSTL前的准备 想要使用JSTL,首先需要给工程导入JSTL的包(JSTL.jar和standard.jar). JSTL标签库 在JSTL中分为以下五个标签 核心标签 格式化标签 SQL标签 ...
- 2018-2019-2 网络对抗技术 20165304 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165304Exp5 MSF基础应用 原理与实践说明 1.实践原理 1).MSF攻击方法 主动攻击:扫描主机漏洞,进行攻击 攻击浏览器 攻击其他客户端 2). ...
- Java自学如何找工作
今天聊一下可能大多数人都关注的问题“自学Java如何找工作”那么首先你就要明确现在招聘Java开发的基本要求是什么?下面我们来看一下招聘网站上面的要求,在这里我只随便找了一个比较全面的要求,自己可以去 ...
- 常用的js代码合集
!function(util){ window.Utils = util(); }( function(){ //document_event_attributes var DEA = "d ...
- Navicat远程连接不上mysql解决方案
一.can‘t connect to MySql server on ‘47.93.X.X’ 这是因为mysql端口被防火墙拦截,需用linux执行如下指令: 1.#/sbin/iptables -I ...
- 如何在Python中调用Matlab
检查您的系统是否具有受支持的 Python 版本和 MATLAB R2014b 或更新版本.要检查您的系统上是否已安装 Python,请在操作系统提示符下运行 Python. 1)打开Prompt,输 ...