50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout, QSlider, QLabel, QPushButton
|
|
from PySide6.QtCore import Qt #211
|
|
|
|
class SliderExample(QWidget):
|
|
def __init__(self):
|
|
super().__init__()
|
|
|
|
self.init_ui()
|
|
|
|
def init_ui(self):
|
|
# 创建一个垂直布局
|
|
layout = QVBoxLayout()
|
|
|
|
# 创建一个标签来显示滑块的值
|
|
self.label = QLabel("当前值: 0", self)
|
|
layout.addWidget(self.label)
|
|
|
|
# 创建一个滑块
|
|
self.slider = QSlider(Qt.Horizontal, self)
|
|
self.slider.setMinimum(0)
|
|
self.slider.setMaximum(100)
|
|
self.slider.setValue(0) # 初始值设为0
|
|
self.slider.setTickPosition(QSlider.TicksBelow)
|
|
self.slider.setTickInterval(10)
|
|
layout.addWidget(self.slider)
|
|
|
|
# 创建一个按钮来获取滑块的当前值
|
|
self.button = QPushButton("获取滑块值", self)
|
|
self.button.clicked.connect(self.show_slider_value)
|
|
layout.addWidget(self.button)
|
|
|
|
# 设置窗口布局
|
|
self.setLayout(layout)
|
|
|
|
self.setWindowTitle('QSlider 示例')
|
|
|
|
def show_slider_value(self):
|
|
# 直接获取滑块的当前值并更新标签
|
|
value = self.slider.value()
|
|
print(f"滑块的值是: {value}") # 添加打印以调试
|
|
self.label.setText(f"当前值: {value}")
|
|
|
|
if __name__ == "__main__":
|
|
app = QApplication([])
|
|
|
|
window = SliderExample()
|
|
window.show()
|
|
|
|
app.exec()
|