📜  PyQt5 QScrollBar – 获取滑块位置(1)

📅  最后修改于: 2023-12-03 14:45:49.353000             🧑  作者: Mango

PyQt5 QScrollBar – 获取滑块位置

PyQt5中的QScrollBar类提供了基于滑块的滚动功能。可以通过以下方式获取QScrollBar的当前滑块位置值:

scrollbar.value()

此方法将返回当前滑块的位置值。您可以将此值分配给变量以获得和存储当前位置。

以下是一个示例,展示如何创建一个QScrollBar并获取其值:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QScrollBar, QLabel, QGridLayout


class Example(QWidget):

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

    def initUI(self):
        grid = QGridLayout()
        self.setLayout(grid)

        # 创建QScrollBar
        scrollbar = QScrollBar()
        scrollbar.setMaximum(100)
        scrollbar.sliderMoved.connect(self.on_changed)

        # 创建QLabel用于显示滑杆的位置值
        self.label = QLabel('0')
        grid.addWidget(scrollbar, 0, 0)
        grid.addWidget(self.label, 0, 1)

        self.setGeometry(300, 300, 350, 200)
        self.setWindowTitle('QScrollBar')
        self.show()

    def on_changed(self, value):
        # 更新标签值
        self.label.setText(str(value))


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

在此示例中,我们创建了一个QScrollBar对象并将其添加到网格布局中。我们还创建了一个QLabel以显示当前滑块位置的值。

通过将信号sliderMoved与槽函数self.on_changed连接,我们可以在滑块的值更改时更新标签上的值。

在方法on_changed中,我们将标签的值设置为当前滑块的位置值。

运行此应用程序,将显示一个带有滑块和标签的窗口。滑动滑块时,标签将立即更新以显示新位置值。

这是一个基本的示例,可帮助您了解如何使用PyQt5 QScrollBar并获取其当前位置值。