滑块控件 QSlider控件的演示:
import sys
from PyQt5.QtCore import Qt, QRegExp
from PyQt5.QtGui import QIcon, QFont, QPalette, QPixmap, QIntValidator, QDoubleValidator, QRegExpValidator
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QToolTip, QHBoxLayout, QMainWindow, QLabel, QVBoxLayout, \
QDialog, QLineEdit, QGridLayout, QFormLayout, QTextEdit, QRadioButton, QCheckBox, QSlider
'''
滑块控件 QSlider 控件的案例
'''
class QSliderDemo(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 设置定位和左上角坐标
self.setGeometry(300, 300, 400, 250)
# 设置窗口标题
self.setWindowTitle('滑块控件 QSlider控件的演示')
# 设置窗口图标
# self.setWindowIcon(QIcon('../web.ico'))
# 创建表单布局
vLayout = QVBoxLayout()
# 创建控件
self.label = QLabel('滑块控件的演示')
self.label.setAlignment(Qt.AlignCenter)
vLayout.addWidget(self.label)
self.slider = QSlider(Qt.Horizontal)
# 设置最小值
self.slider.setMinimum(12)
# 设置最大值
self.slider.setMaximum(48)
# 设置步长
self.slider.setSingleStep(3)
# 设置当前值
self.slider.setValue(18)
# 设置刻度位置 再下方
self.slider.setTickPosition(QSlider.TicksBelow)
# 设置刻度的间隔
self.slider.setTickInterval(6)
vLayout.addWidget(self.slider)
self.slider.valueChanged.connect(self.valueChange)
self.setLayout(vLayout)
def valueChange(self):
size = self.slider.value()
print("当前值: %s" % size)
self.label.setFont(QFont('Arial',size))
if __name__ == '__main__':
app = QApplication(sys.argv)
# 设置应用图标
app.setWindowIcon(QIcon('../web.ico'))
w = QSliderDemo()
w.show()
sys.exit(app.exec_())