欢迎访问本站,希望站内信息可以帮助到您!感兴趣的,可以加入我的知识星球,一对一解答!

PyQt5系列教程(三十一)滑动条的使用

PyQt5开发 迷途小书童 0评论

软硬件环境

  • Windows 10 64bit
  • Anaconda3 with python 3.8
  • PyQt5 5.15

前言

滑动条 QSlider 也是一个常见的控件,有水平滑动条和垂直滑动条之分,它通常用来获取用户输入,一般是数值,简单直观。

实操

部分注释写在了代码中

import sys

from PyQt5.QtWidgets import QMainWindow, QApplication, QSlider

from ui import Ui_MainWindow

class MainWindow(QMainWindow, Ui_MainWindow):

    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)

        # 水平滑动条
        # 设置最小值
        self.horizontalSlider.setMinimum(0)
        # 设置最大值
        self.horizontalSlider.setMaximum(100)
        # 默认值,这里放一个 label 控件来显示当前滑动条的值
        self.label_horizontal.setText('50')
        # 步长,比如水平滑动条使用方向键一次,滑动条增加/减少的值
        self.horizontalSlider.setSingleStep(2)
        # 刻度显示的位置,不添加这句,即不设置刻度
        self.horizontalSlider.setTickPosition(QSlider.TicksBelow)
        # valueChanged信号的绑定,常见的信号还有sliderPressed、sliderReleased、sliderMoved
        self.horizontalSlider.valueChanged.connect(self.update_horizontal)

        # 垂直滑动条的操作非常类似
        self.verticalSlider.setMinimum(0)
        self.verticalSlider.setMaximum(1000)
        self.label_vertical.setText('500')
        self.verticalSlider.setSingleStep(10)
        self.verticalSlider.setTickPosition(QSlider.TicksRight)
        self.verticalSlider.valueChanged.connect(self.update_vertical)

    def update_horizontal(self):
        self.label_horizontal.setText(str(self.horizontalSlider.value()))

    def update_vertical(self):
        self.label_vertical.setText(str(self.verticalSlider.value()))

if __name__ == '__main__':
    app = QApplication(sys.argv)
    windows = MainWindow()
    windows.show()
    sys.exit(app.exec_())

源码下载

https://github.com/xugaoxiang/learningPyQt5

PyQt5系列教程

更多PyQt5教程,请移步

https://xugaoxiang.com/category/python/pyqt5/

喜欢 (0)

您必须 登录 才能发表评论!