脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - PyQt5中QSpinBox计数器的实现

PyQt5中QSpinBox计数器的实现

2021-08-26 00:29水之心 Python

这篇文章主要介绍了PyQt5中QSpinBox计数器的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

QSpinBox 是一个计数器控件,允许用户选择一个整数值,通过单击向上/向下按钮或按键盘上的上/下箭头来增加/减少当前显示的值,当然用户也可以输入值。在默认情况下,QSpinBox 的取值范围是 0~99,每次改变的步长值为 1。

QSpinBox 类和 QDoubleSpinBox 类均派生自 QAbstractSpinBox 类。QSpinBox 用于处理整数值,QDoubleSpinBox 则用于处理浮点值,它们之间的区别就是处理数据的类型不同,其他功能都基本相同。QDoubleSpinBox 的默认精度是两位小数,但可以通过 setDecimals() 来改变。

QSpinBox类中的常用方法:

PyQt5中QSpinBox计数器的实现

每次单击向上/向下按钮时,QSpinBox 计数器都会发射 valueChanged 信号,可以从相应的 slot 函数中通过 value() 函数获得计数器的当前值。

  1. import sys
  2. from PyQt5.QtCore import *
  3. from PyQt5.QtGui import *
  4. from PyQt5.QtWidgets import *
  5.  
  6. class spindemo(QWidget):
  7. def __init__(self, parent=None):
  8. super(spindemo, self).__init__(parent)
  9. self.setWindowTitle("SpinBox 例子")
  10. self.resize(300, 100)
  11.  
  12. layout = QVBoxLayout()
  13. self.l1 = QLabel("current value:")
  14. self.l1.setAlignment(Qt.AlignCenter)
  15. layout.addWidget(self.l1)
  16. self.sp = QSpinBox()
  17. layout.addWidget(self.sp)
  18. self.sp.valueChanged.connect(self.valuechange)
  19. self.setLayout(layout)
  20.  
  21. def valuechange(self):
  22. self.l1.setText("current value:" + str(self.sp.value()))
  23.  
  24. if __name__ == '__main__':
  25. app = QApplication(sys.argv)
  26. ex = spindemo()
  27. ex.show()
  28. sys.exit(app.exec_())

效果:

PyQt5中QSpinBox计数器的实现

QSpinBox和QDoubleSpinBox的比较

  • QSpingBox是一个计数器控件,允许用户选择一个整数值,通过上下按钮或键盘上下箭头来增加或减少当前值,同时支持用户手动输入。
  • 在默认情况下QSpingBox的默认取值范围是0-99,步长为1。
  • QSpinBox类和QDoubleSpinBox类均派生自QAbstractSpinBox类,QSpinBox用于处理整数值,QDoubleSpinBox则用于处理浮点值,他们之间的区别就是处理数据的类型不同,其他功能都基本相投,QDoubleSpinBox的默认精度是两位小数,但可以通过setDecimals()来设置。

到此这篇关于PyQt5中QSpinBox计数器的实现的文章就介绍到这了,更多相关PyQt5 QSpinBox计数器内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.jianshu.com/p/3a67ef2c315f

延伸 · 阅读

精彩推荐