今天来学习下checkBox的使用,在实际项目种checkBox的作用多用于选择某几项事件去执行,如在整个测试框架中,测试fail项 勾选在执行操作。
一.环境配置
1.python 3.7.8
可直接进入官网下载安装:Download Python | Python.org
2.QT Designer
官方下载路径:Qt Designer Download for Windows and Mac
二.实例演示
1.直接用QT Designer直接生成,如下所示:
这边生成了四个checkBox按钮,接下来为这四个按钮绑定不同的事件。
2.添加checkBox响应事件
def one(self):
print('第一')
return
def two(self):
print('第二')
return
def three(self):
print('第三')
return
def four(self):
print('第四')
return
if __name__ == '__main__':
app = QApplication(sys.argv)
MainWindow = QMainWindow()
ui = xxx.Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()##显示
sys.exit(app.exec_())##退出界面
上面我们给checkBox的四个按钮分别添加了不同的事件,要么我们来看下checkBox的常用方法:
(1)setChecked():调整复选框的状态,设置为True表示选中,False表示取消选中的复选框
(2)setText():设置复选框的显示文本
(3)text():返回复选框的显示文本
3.单独触发按钮操作
单独执行按钮1、按钮2、按钮3,会如上图所述,跟pushButton一样,但是checkBox的作用远不止如此,那么接下来我们来看看如何勾选执行操作。
4.判断checkBox是否勾选及勾选后的触发事件
from PyQt5.QtWidgets import QMessageBox
def checkBox_event(self,MainWindow):
if (self.checkBox or self.checkBox_2 or self.checkBox_3 or self.checkBox_4).isChecked():
if self.checkBox.isChecked():
self.pushButton.clicked.connect(self.one)
if self.checkBox_2.isChecked():
self.pushButton.clicked.connect(self.two)
if self.checkBox_3.isChecked():
self.pushButton.clicked.connect(self.three)
if self.checkBox_4.isChecked():
self.pushButton.clicked.connect(self.four)
QMessageBox.Ok
else:
QMessageBox.Ok
(1)if (self.checkBox or self.checkBox_2 or self.checkBox_3 or self.checkBox_4).isChecked():
这段代码的作用是判断我们的四个checkBox按钮是否被选中。
(2)if self.checkBox.isChecked():
self.pushButton.clicked.connect(self.one)
这段代码的作用是checkBox是否被选中,如果被选中将会执行的事件。上面这些代码只是作为判断,按钮是否被选中,及被选中后的操作,但是并没有一个事件去执行这些操作,那么接下来去定义一个pushButton去执行选中的checkBox事件。
5.checkBox勾选事件执行操作
def Button():
button = Ui_MainWindow()
ui.pushButton.clicked.connect(button.checkBox_event)
实例化主程序,通过单击pushButton按钮,去执行勾选事件。
比如我想要去执行按钮1、按钮2、按钮4的事件,输出如下:
三.总结
这边我们通过简单的事件来说明checkBox的操作,在很多项目中,checkBox的作用举足轻重,大家也是可以好好学习学习。
@Neng