一.描述

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——正常选中。

精彩链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。