[PyQt6] PartⅡ. QSlider

QSlider

滑条

关键代码

        self.slider.setOrientation(Qt.Orientation.Horizontal) # 设置方向为水平方向
        self.slider.setTickPosition(QSlider.TickPosition.TicksBelow) # 设置刻度出现的slider下面
        self.slider.setTickInterval(5) # 设置刻度的单位长度

        self.slider.setMinimum(0) # 最小值
        self.slider.setMaximum(100) # 最大值
        self.slider.valueChanged.connect(self.changed_slider) # 当数值改变时,传递一个signal,给slot,changed_slider

完整代码

from PyQt6.QtWidgets import QApplication, QWidget, QSlider, QLabel, QHBoxLayout, QVBoxLayout
from PyQt6.QtGui import QIcon, QFont
from PyQt6.QtCore import Qt
import sys

class Window(QWidget):
    def __init__(self):
        super().__init__()

        self.setGeometry(200, 200, 700, 400) # 设置窗口大小
        self.setWindowTitle("Python QSlider")
        self.setWindowIcon(QIcon('python.png')) # 设置图片,没有的话不显示

        hbox = QHBoxLayout()

        self.slider = QSlider()

        self.slider.setOrientation(Qt.Orientation.Horizontal) # 设置方向为水平方向
        self.slider.setTickPosition(QSlider.TickPosition.TicksBelow) # 设置刻度出现的slider下面
        self.slider.setTickInterval(5) # 设置刻度的单位长度

        self.slider.setMinimum(0) # 最小值
        self.slider.setMaximum(100) # 最大值
        self.slider.valueChanged.connect(self.changed_slider) # 当数值改变时,传递一个signal,给slot,changed_slider

        self.label = QLabel()
        self.label.setFont(QFont("Times", 15))

        hbox.addWidget(self.slider)
        hbox.addWidget(self.label)

        self.setLayout(hbox)

    def changed_slider(self):
        value = self.slider.value()
        self.label.setText(str(value))


app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec())

程序截图

posted @ 2022-05-24 15:51  deadright  阅读(97)  评论(0编辑  收藏  举报