一、QSpinBox控件
1.使用示例
def initUI8(self): # 调整窗口大小 self.resize(200,100) # label用于显示当前spinBox的值 self.label = QLabel("当前值") self.label.setAlignment(Qt.AlignCenter) # 定义一个计数控件 self.spin = QSpinBox() # 绑定槽函数 self.spin.valueChanged.connect(self.valueChenge) vbox = QVBoxLayout() vbox.addWidget(self.label) vbox.addWidget(self.spin) self.setLayout(vbox) # 当spinBox的值改变时,触发这个槽函数 def valueChenge(self): self.label.setText('当前值:' + str(self.spin.value()))
效果:
2.其他方法
self.spin.setRange(100, 200) # 设置可选范围100-200 self.spin.setValue(118) # 设置当前值为118 self.spin.setSingleStep(3) # 设置每次增加或减少的步长为3
二、QSlider控件
QSlider是通过滑块来控制数值的大小;
1.使用示例
def initUI8(self): # 调整窗口大小 self.resize(200, 100) # label用于显示当前spinBox的值 self.label = QLabel("当前值") self.label.setAlignment(Qt.AlignCenter) self.slider = QSlider(Qt.Horizontal) # 定义一个横向的slider滑块控件 self.slider.setMinimum(12) # 设置最小值 self.slider.setMaximum(50) # 设置最大值 self.slider.setValue(18) self.slider.setSingleStep(2) # 设置变化步长 self.slider.setTickPosition(QSlider.TicksBelow) # 设置刻度在下方 self.slider.setTickInterval(6) # 设置刻度间隔,即滑条下面的小竖线 # 绑定槽函数 self.slider.valueChanged.connect(self.valueChenge) vbox = QVBoxLayout() vbox.addWidget(self.label) vbox.addWidget(self.slider) self.setLayout(vbox) # 当slider的值改变时,触发这个槽函数 def valueChenge(self): size = self.slider.value() print('当前值:' + str(size)) self.label.setFont(QFont('Arial', size))
效果:
====