午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

python GUI庫圖形界面開發(fā)之PyQt5復選框控件QCheckBox詳細使用方法與實例

瀏覽:169日期:2022-08-05 10:59:14
QCheckBox類中常用方法如表 方法 描述 setChecked() 設置復選框的狀態(tài),設置為True表示選中,False表示取消選中的復選框 setText() 設置復選框的顯示文本 text() 返回復選框的顯示文本 isChecked() 檢查復選框是否被選中 setTriState() 設置復選框為一個三態(tài)復選框 setCheckState() 三態(tài)復選框的狀態(tài)設置,具體設置可以見下表 三態(tài)復選框的三種狀態(tài) 名稱 值 含義 Qt.Checked 2 組件沒有被選中(默認) Qt.PartiallyChecked 1 組件被半選中 Qt.Unchecked 0 組件被選中 QCheckBox按鈕的使用實例

import sysfrom PyQt5.QtCore import *from PyQt5.QtGui import *from PyQt5.QtWidgets import *from PyQt5.QtCore import Qtclass CheckBoxDemo(QWidget): def __init__(self, parent=None): super(CheckBoxDemo, self).__init__(parent) #創(chuàng)建一個GroupBox組 groupBox = QGroupBox('Checkboxes') groupBox.setFlat(False) #創(chuàng)建復選框1,并默認選中,當狀態(tài)改變時信號觸發(fā)事件 self.checkBox1 = QCheckBox('&Checkbox1') self.checkBox1.setChecked(True) self.checkBox1.stateChanged.connect(lambda: self.btnstate(self.checkBox1)) #創(chuàng)建復選框,標記狀態(tài)改變時信號觸發(fā)事件 self.checkBox2 = QCheckBox('Checkbox2') self.checkBox2.toggled.connect(lambda: self.btnstate(self.checkBox2)) #創(chuàng)建復選框3,設置為3狀態(tài),設置默認選中狀態(tài)為半選狀態(tài),當狀態(tài)改變時信號觸發(fā)事件 self.checkBox3 = QCheckBox('tristateBox') self.checkBox3.setTristate(True) self.checkBox3.setCheckState(Qt.PartiallyChecked) self.checkBox3.stateChanged.connect(lambda: self.btnstate(self.checkBox3)) #水平布局 layout = QHBoxLayout() #控件添加到水平布局中 layout.addWidget(self.checkBox1) layout.addWidget(self.checkBox2) layout.addWidget(self.checkBox3) #設置QGroupBox組的布局方式 groupBox.setLayout(layout) #設置主界面布局垂直布局 mainLayout = QVBoxLayout() #QgroupBox的控件添加到主界面布局中 mainLayout.addWidget(groupBox) #設置主界面布局 self.setLayout(mainLayout) #設置主界面標題 self.setWindowTitle('checkbox demo') #輸出三個復選框當前的狀態(tài),0選中,1半選,2沒選中 def btnstate(self, btn): chk1Status = self.checkBox1.text() + ', isChecked=' + str(self.checkBox1.isChecked()) + ’, chekState=’ + str( self.checkBox1.checkState()) + 'n' chk2Status = self.checkBox2.text() + ', isChecked=' + str(self.checkBox2.isChecked()) + ’, checkState=’ + str( self.checkBox2.checkState()) + 'n' chk3Status = self.checkBox3.text() + ', isChecked=' + str(self.checkBox3.isChecked()) + ’, checkState=’ + str( self.checkBox3.checkState()) + 'n' print(chk1Status + chk2Status + chk3Status)if __name__ == ’__main__’: app = QApplication(sys.argv) checkboxDemo = CheckBoxDemo() checkboxDemo.show() sys.exit(app.exec_())

效果圖如下

python GUI庫圖形界面開發(fā)之PyQt5復選框控件QCheckBox詳細使用方法與實例

QCheckBox代碼分析:

在這個例子中,將三個復選框添加到一個水平布局管理器中,并添加到一個QGroupBox組中

groupBox = QGroupBox('Checkboxes') groupBox.setFlat(False)

將三個復選框的stateChanged信號都連接到槽函數stateChanged(),使用landba的方式傳遞對象給槽函數

當QCheckBox狀態(tài)改變時發(fā)射stateChanged信號,當信號發(fā)生改變時觸發(fā)自定義的槽函數btnstate()

self.checkBox1.stateChanged.connect(lambda: self.btnstate(self.checkBox1))self.checkBox2.toggled.connect(lambda: self.btnstate(self.checkBox2))self.checkBox3.stateChanged.connect(lambda: self.btnstate(self.checkBox3))

實例化對象CheckBox1和CheckBox2兩個對象,將CheckBox1的狀態(tài)設置為選中,為CheckBox1設置為快捷鍵,使用‘&’符號,則可以通過快捷鍵Alt+C選中checkbox1復選框

self.checkBox1 = QCheckBox('&Checkbox1')self.checkBox1.setChecked(True)

使用按鈕的isChecked()方法,判斷復選框是否被選中,其核心代碼是:

chk1Status = self.checkBox1.text() + ', isChecked=' + str(self.checkBox1.isChecked()) + ’, chekState=’ + str( self.checkBox1.checkState()) + 'n'

實例化一個QCheckBox類的對象checkBox3,然后使用setTristate()開啟三態(tài)模式,然后設置為半選狀態(tài)并連接槽函數

self.checkBox3 = QCheckBox('tristateBox')self.checkBox3.setTristate(True)self.checkBox3.setCheckState(Qt.PartiallyChecked)self.checkBox3.stateChanged.connect(lambda: self.btnstate(self.checkBox3))

本文詳細講解了PyQt5復選框控件QCheckBox詳細使用方法與實例,更多關于PyQt5控件知識請查看下面的相關鏈接

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美日韩大片 | 亚洲拍拍拍 | av网站在线免费观看 | 韩国一级黄色片 | 国产一区观看 | av老女人 | 欧美日韩午夜视频 | 手机免费观看av | 亚洲第一区在线 | 国产精品综合在线 | 国内视频自拍 | 国产激情无套内精对白视频 | 综合天堂av久久久久久久 | 免费在线看黄视频 | 亚洲欧美在线观看 | 成人综合在线视频 | 毛片综合| 永久免费精品 | 四虎永久地址 | 成人精品影院 | 日韩视频在线免费 | 日韩中文字幕网站 | 成年人视频免费在线观看 | 人人爽人人插 | 男人www| 国产亚洲精品久久久久久无几年桃 | 超碰在线人人草 | www色婷婷 | 亚洲精品色 | 四虎影院永久地址 | 午夜三级在线观看 | 亚洲aaaaaa | 亚洲人人爱 | 久久午夜精品 | 午夜性色福利视频 | 亚洲精品欧美日韩 | 热久久中文字幕 | 欧美成人综合视频 | 欧美激情一二三区 | 四虎成人精品永久免费av九九 | 国产一区二区在线免费 |