介绍
QSpinBox是一个计数器控件,在默认情况下,QSpinBox的取值范围是0~99,每次改变的步长值为1。
QSpinBox类和QDoubleSpinBox类均派生自QAbstractSPinBox类。QSpinBox用于处理整数值,QDoubleSpinBox则用于处理浮点值,它们之间的区别是处理数据的类型不同。QDoubl的默认精度是两位小数,但可以通过setDecimals()
来改变。
方法
方法 | 描述 |
---|---|
setMinimum() | 设置滑动条控件的最小值 |
setMaximum() | 设置滑动条控件的最大值 |
setSingleStep() | 设置滑动条控件递增/递减的步长值 |
setValue() | 设置滑动条控件的值 |
value() | 获得滑动条控件的值 |
setTickInterval() | 设置刻度间隔 |
setTickPosition() | 设置刻度标记的位置,可以输入8一个枚举值,这个枚举值指定刻度线相当于滑块和用户操作的位置。以下是可以输入的枚举值 QSlider.NoTicks,不绘制任何刻度线 QSlider.TicksBothSides,在滑动的两侧绘制刻度线 QSlider.TickAbove,在(水平)滑块上方绘制刻度线 QSlider.TickBelow,在(水平)滑块下方绘制刻度线 QSlider.TickLeft,在(垂直)滑块左侧绘制刻度线 QSlider.TicksRight,在(垂直)滑动右侧绘制刻度线 |
信号
信号 | 含义 |
---|---|
valueChanged | 当滑块的值发生改变时发射此信号。此信号是最常用的 |
sliderPressed | 当用户按下滑动时发射此信号 |
sliderMoved | 当用户拖动滑块时发射此信号 |
sliderReleased | 当用户释放滑块时发射此信号 |
QSpinBox的使用
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class SliderDemo(QWidget):
def __init__(self, parent=None):
super(SliderDemo, self).__init__(parent)
self.setWindowTitle("QSlider 例子")
self.resize(300, 100)
layout = QVBoxLayout()
self.l1 = QLabel("Hello PyQt5")
self.l1.setAlignment(Qt.AlignCenter)
layout.addWidget(self.l1)
# 水平方向
self.sl = QSlider(Qt.Horizontal)
#设置最小值
self.sl.setMinimum(10)
#设置最大值
self.sl.setMaximum(50)
# 步长
self.sl.setSingleStep( 3 )
# 设置当前值
self.sl.setValue(20)
# 刻度位置,刻度在下方
self.sl.setTickPosition(QSlider.TicksBelow)
# 设置刻度间隔
self.sl.setTickInterval(5)
layout.addWidget(self.sl)
# 连接信号槽
self.sl.valueChanged.connect(self.valuechange)
self.setLayout(layout)
def valuechange(self):
print('current slider value=%s' % self.sl.value() )
size = self.sl.value()
self.l1.setFont(QFont("Arial",size))
if __name__ == '__main__':
app = QApplication(sys.argv)
demo = SliderDemo()
demo.show()
sys.exit(app.exec_())
使用展示
后记
开始学习吴恩达的机器学习了,加油吧!