PyQt5 GUI程式設計 QCheckBox

2021-09-25 02:12:48 字數 2605 閱讀 8613

qcheckbox類繼承自qabstractbutton類,它提供了一組帶文字標籤的核取方塊,使用者可以選擇多個選項。和qpushbutton一樣,核取方塊可以顯示文字或者圖示,其中文字可以通過建構函式或者settext()來設定,圖示可以通過seticon()來設定。在視覺上,qbuttongroup可以把許多核取方塊組織在一起。

qcheckbox(核取方塊)和qradiobutton(單選鈕)都是選項按鈕,它們的區別在於單選鈕為多選一,而核取方塊為多選多。qcheckbox通常被應用於需要使用者選擇乙個或多個的選項的場景中。

只要核取方塊被選中或者被取消選中,都會發射乙個statechanged訊號。除了常用的選中和未選中兩種狀態,qcheckbox還提供了第三種狀態(半選中)來表示「沒有變化」。當需要為使用者提供乙個選中或者未選中核取方塊的選擇時,這種狀態是很有用的。如果需要第三種狀態,則可以通過settristate()來使它生效,並使用checkstate()來查詢當前的切換狀態。

qcheckbox類的常用方法如下:

三態核取方塊有三種狀態,如下所示:

應用例項如下:

import sys

from pyqt5.qtcore import *

from pyqt5.qtgui import *

from pyqt5.qtwidgets import *

class checkboxdemo(qwidget):

def __init__(self,parent=none):

super().__init__(parent)

groupbox = qgroupbox("checkboxes")

#去除groupbox的邊框

groupbox.setflat(true)

layout = qhboxlayout()

self.checkbox1 = qcheckbox("&checkbox1")

self.checkbox1.setchecked(true)

self.checkbox1.statechanged.connect(lambda:self.btnstate(self.checkbox1))

layout.addwidget(self.checkbox1)

self.checkbox2 = qcheckbox("checkbox2")

self.checkbox2.toggled.connect(lambda:self.btnstate(self.checkbox2))

layout.addwidget(self.checkbox2)

self.checkbox3 = qcheckbox("checkbox3")

self.checkbox3.settristate(true)

#設定元件為半選中

PyQt5GUI快速程式設計學習

第一部分 前面和gui程式設計沒有直接關係,看了一下 1 類程式設計 init 類的初始化函式。2 動態函式和偏函式。大概看了一下。以前沒怎麼接觸。還是比較有用的。第二部分 gui程式設計 1 訊號和槽 signals and slots 預設的訊號和槽。使用 python qt gui快速程式設計...

PyQt5 GUI程式設計 設定驗證器

在通常情況下,我們會對使用者的輸入做一些限制,可以通過驗證器來進行。常見的驗證器有 整型驗證器 浮點型驗證器及其他自定義驗證器。from pyqt5.qtgui import qintvalidator,qdoublevalidator,qregexpvalidator from pyqt5.qtc...

PyQt5 GUI程式的基本框架

學習pyqt推薦大家看這本書 建立窗體,用qwidget widgethello qtwidgets.qwidget 設定窗體的寬度和高度 widgethello.resize 360,150 建立窗體的標題 widgethello.setwindowtitle demo2 1 建立標籤,父容器為窗...