PyQt5-滑块控件
'''
滑块控件(QSlider)
'''
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class QSliderDemo(QWidget):
def __init__(self):
super(QSliderDemo, self).__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('滑块控件演示')
self.resize(800, 600)
layout = QVBoxLayout()
self.label = QLabel('水平滑块—字体大小')
self.label.setAlignment(Qt.AlignCenter)
self.label1 = QLabel('垂直滑块—字体大小')
self.label1.setAlignment(Qt.AlignCenter)
self.label2 = QLabel('水平滑块—字体位移')
self.label2.setFont(QFont('Arial', 20))
self.label3 = QLabel('垂直滑块—字体位移')
self.label1.setFont(QFont('Arial', 20))
layout.addWidget(self.label)
layout.addWidget(self.label1)
layout.addWidget(self.label2)
layout.addWidget(self.label3)
""" * * * * 水 * * 平 * * * 滑 * * * * 块 * * * * """
self.slider = QSlider(Qt.Horizontal)
self.slider.setMinimum(10)
self.slider.setMaximum(50)
self.slider.setSingleStep(5)
self.slider.setValue(10)
self.slider.setTickPosition(QSlider.TicksBelow)
self.slider.setTickInterval(1)
layout.addWidget(self.slider)
self.slider.valueChanged.connect(self.valueChange)
""" * * * * 垂 * * 直 * * * 滑 * * * * 块 * * * * """
self.slider1 = QSlider(Qt.Vertical)
self.slider1.setMinimum(5)
self.slider1.setMaximum(30)
self.slider1.setSingleStep(5)
self.slider1.setValue(5)
self.slider1.setTickPosition(QSlider.TicksLeft)
self.slider1.setTickInterval(5)
layout.addWidget(self.slider1)
self.slider1.valueChanged.connect(self.valueChange)
self.setLayout(layout)
def valueChange(self):
print('——————水平滑块当前值为——————: %s' % self.slider.value())
print('++++++垂直滑块当前值为++++++: %s' % self.slider1.value())
size = self.slider.value()
size1 = self.slider1.value()
self.label.setFont(QFont('Arial', size))
self.label1.setFont(QFont('Arial', size1))
if __name__ == '__main__':
app = QApplication(sys.argv)
main = QSliderDemo()
main.show()
sys.exit(app.exec_())