• 【PyQt】12-滑块、计数控件



    前言

    1、滑块控件
    2、计数控件


    一、滑块控件 QSlider

    '''
    #Author :susocool
    #Creattime:2024/2/15
    #FileName:28-滑块控件
    #Description: 通过滑块选择字体大小
    
    '''
    import sys
    from PyQt5.QtCore import *
    from PyQt5.QtWidgets import *
    from PyQt5.QtGui import *
    
    class SliderDemo(QWidget):
        def __init__(self):
            super().__init__()
            self.initUI()
    
        def initUI(self):
            self.setWindowTitle('滑块控件')
            self.resize(300,200)
    
    
            self.label = QLabel('请滑动刻度')
            self.label.setAlignment(Qt.AlignVCenter)    # 文本会在 Label 控件的垂直中心对齐
    
            self.slider = QSlider(Qt.Horizontal)
    
            self.label_Value = QLabel(str(self.slider.value()))     # 显示刻度的数值
    
            # 设置极值
            self.slider.setMinimum(12)
            self.slider.setMaximum(48)
            # 步长
            self.slider.setSingleStep(3)
            # 当前值
            self.slider.setValue(18)
            # 刻度位置
            self.slider.setTickPosition(QSlider.TicksBelow)
            # 刻度间隔
            self.slider.setTickInterval(6)
    
            self.slider.valueChanged.connect(self.valueChange)
    
            layout = QVBoxLayout ()
            layout.addWidget(self.label)
            layout.addWidget(self.slider)
            layout.addWidget(self.label_Value)
            self.setLayout(layout)
    
        def valueChange(self):
            print('当前值: %s' % self.slider.value())
            size = self.slider.value()
            self.label.setFont(QFont('Arial',size))
            self.label_Value.setText(str(size))
    
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ui = SliderDemo()
        ui.show()
        sys.exit(app.exec_())
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61

    运行结果

    在这里插入图片描述

    二、计数器控件 QSpinBox

    '''
    #Author :susocool
    #Creattime:2024/2/15
    #FileName:029-计数器控件
    #Description: 数字选择
    
    '''
    
    import sys
    from PyQt5.QtCore import *
    from PyQt5.QtWidgets import *
    from PyQt5.QtGui import *
    
    class QSpinBoxDemo(QWidget):
        def __init__(self):
            super().__init__()
            self.initUI()
    
        def initUI(self):
            self.setWindowTitle('计数器控件展示')
            self.resize(300,100)
    
            self.label = QLabel('当前值')
            self.label.setAlignment(Qt.AlignVCenter)
    
            self.spinBox = QSpinBox()
            self.spinBox.setValue(17)       # 初始值
            self.spinBox.setSingleStep(3)   # 步长
            self.spinBox.setRange(10,40)    # 限制范围
    
    
            self.spinBox.valueChanged.connect(self.valueChange)
    
            layout = QVBoxLayout()
            layout.addWidget(self.label)
            layout.addWidget(self.spinBox)
            self.setLayout(layout)
    
    
        def valueChange(self):
            self.label.setText('当前值:'+str(self.spinBox.value()))
    
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ui = QSpinBoxDemo()
        ui.show()
        sys.exit(app.exec_())
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48

    运行结果

    在这里插入图片描述


    总结

    这篇文章依旧没有总结

  • 相关阅读:
    Banana Pi BPI-W3之RK3588安装Qt+opencv+采集摄像头画面.
    .NET 8 的 green thread 异步模型被搁置了
    如何让 Source Insight 识别 AUTOSAR 宏定义 FUNC
    【数学】Pair of Topics—CF1324D
    SSRF漏洞
    ElasticSearch7.3学习(二十七)----聚合概念(bucket和metric)及其示例
    vue iview 级联选择器遇到的坑
    Cholesterol-PEG-Amine,CLS-PEG-NH2,胆固醇-聚乙二醇-氨基科研用试剂
    面试题:如何正确的停掉线程?
    景联文科技提供3D点云-图像标注服务
  • 原文地址:https://blog.csdn.net/qq_45640207/article/details/136123798