PyQt5 GUI编程——QSpinBox(计数器)

QSpinBox是一个计数器控件,允许用户选择一个整数值,通过单击向上/向下按钮或按键盘上的上/下箭头来增加/减少当前显示的值,当然用户也可以输入值。
在默认情况下,QSpinBox的取值范围是0-99,每次改变的步长值为1。
QSpinBox类和QDoubleSpinBox类均派生自QAbstractSpinBox类。QSpinBox用于处理整数值,QDoubleSpinBox则用于处理浮点型数据,它们之间的区别就是处理数据的类型不同,其他功能都基本相同。QDoubleSpinBox的默认精度是两位小数,但可以通过setDecimals()来改变。
QSpinBox类中的常用方法如下:
PyQt5 GUI编程——QSpinBox(计数器)_第1张图片
每次单击向上/向下按钮时,QSpinBox计数器都会发射valueChanged信号,可以从相应的槽函数中通过value()函数获得计数器的当前值。
应用实例如下:

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class spindemo(QWidget):
	def __init__(self,parent=None):
		super().__init__(parent)
		self.setWindowTitle('SpinBox 例子')
		self.resize(300, 100)
		
		layout = QVBoxLayout()
		self.ll = QLabel('current value:')
		self.ll.setAlignment(Qt.AlignCenter)
		layout.addWidget(self.ll)
		#默认的取值范围为0-99,每次改变的步长值为1,允许自定义设置
		self.sp = QSpinBox()
		layout.addWidget(self.sp)
		self.sp.valueChanged.connect(self.valuechange)
		self.setLayout(layout)
		
	def valuechange(self):
		#把计数器的当前值设置到标签文本中
		self.ll.setText('current value:' + str(self.sp.value()))

if __name__ == '__main__':
	app = QApplication(sys.argv)
	ex = spindemo()
	ex.show()
	sys.exit(app.exec_())

PyQt5 GUI编程——QSpinBox(计数器)_第2张图片

你可能感兴趣的:(PyQt5 GUI编程——QSpinBox(计数器))