【第八章】PyQt5 widgets(pyqt5 部件)

本文详细介绍了PyQt5中的几种常用部件,包括QCheckBox的使用,toggle模式的QPushButton,QSlider的实现,QProgressBar的进度控制,以及QCalendarWidget日历选择功能。通过实例展示了这些部件如何在实际应用中操作和交互。
摘要由CSDN通过智能技术生成

部件是一个应用程序的基本组件块。PyQt5具有大量的组件,包含按钮、选择框、滑块或列表盒子等。本章则主要介绍一些常用的组件:QCheckBox、tooggle模式下的QPushButton、QSlider、QProgressBar和QCalendarWidget。

QCheckBox

QCheckBox具有两种状态的部件:打开和关闭。这是一个带有标签的盒子,复选框通常用于表示可以启用或禁用的应用程序中的功能。

import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QWidget, QCheckBox, QApplication


class Example(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):

        cb = QCheckBox('Show title', self)
        cb.move(20, 20)
        cb.toggle()
        cb.stateChanged.connect(self.changeTitle)

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('QCheckBox')
        self.show()

    def changeTitle(self, state):
        if state == Qt.Checked:
            self.setWindowTitle('QCheckBox')
        else:
            self.setWindowTitle(' ')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

以上示例中,我们创建了一个用于切换窗口标题的复选框。

cb = QCheckBox('show title', self)

这是QCheckBox的构造器

cb.toggle()

我们设置了标题,因此我们也勾选了复选框。

cb.stateChanged.connect(self.changeTitle)

stateChanged 信号连接到用户定义的changeTitle()方法,,这个changeTitle()方法会切换窗口的标题。

def changeTitle(self, state):
    
    if state == Qt.Checked:
        self.setWindowTitle('QCheckBox')
    else:
        self.setWindowTitle(' ')

窗口小部件的状态被赋予状态变量中的changeTitle()方法,如果选中小部件,我们就设置窗口的标题,否则,我们将一个空字符串设置为标题。

Toggle button

切换按钮是特殊模式下的QPushButton。它是有两种状态的按钮:按下和没有按下。我们通过点击切换两种状态,在某些情况下,此功能非常的适用。

import sys
from PyQt5.QtGui import QColor
from PyQt5.QtWidgets import QWidget, QPushButton, QFrame, QApplicat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值