PyQt5中QSpinBox计数器的实现


Posted in Python onJanuary 18, 2021

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

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

QSpinBox类中的常用方法:

PyQt5中QSpinBox计数器的实现

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

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


class spindemo(QWidget):
  def __init__(self, parent=None):
    super(spindemo, self).__init__(parent)
    self.setWindowTitle("SpinBox 例子")
    self.resize(300, 100)

    layout = QVBoxLayout()
    self.l1 = QLabel("current value:")
    self.l1.setAlignment(Qt.AlignCenter)
    layout.addWidget(self.l1)
    self.sp = QSpinBox()
    layout.addWidget(self.sp)
    self.sp.valueChanged.connect(self.valuechange)
    self.setLayout(layout)

  def valuechange(self):
    self.l1.setText("current value:" + str(self.sp.value()))


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

效果:

PyQt5中QSpinBox计数器的实现

QSpinBox和QDoubleSpinBox的比较

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

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

Python 相关文章推荐
Python os模块介绍
Nov 30 Python
Python中使用Queue和Condition进行线程同步的方法
Jan 19 Python
详解设计模式中的工厂方法模式在Python程序中的运用
Mar 02 Python
深入解析Python中函数的参数与作用域
Mar 20 Python
python虚拟环境virualenv的安装与使用
Dec 18 Python
python使用__slots__让你的代码更加节省内存
Sep 05 Python
python os.listdir按文件存取时间顺序列出目录的实例
Oct 21 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
Mar 05 Python
Django serializer优化类视图的实现示例
Jul 16 Python
Python带你从浅入深探究Tuple(基础篇)
May 15 Python
教你使用TensorFlow2识别验证码
Jun 11 Python
Python代码实现双链表
May 25 Python
全网最细 Python 格式化输出用法讲解(推荐)
Jan 18 #Python
PyQt实现计数器的方法示例
Jan 18 #Python
Python实现邮件发送的详细设置方法(遇到问题)
Jan 18 #Python
Python实现一个论文下载器的过程
Jan 18 #Python
利用python为PostgreSQL的表自动添加分区
Jan 18 #Python
如何查看python关键字
Jan 17 #Python
Python日志打印里logging.getLogger源码分析详解
Jan 17 #Python
You might like
php 自写函数代码 获取关键字 去超链接
2010/02/08 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
PHP对接微信公众平台消息接口开发流程教程
2014/03/25 PHP
jQuery+PHP+ajax实现微博加载更多内容列表功能
2014/06/27 PHP
Laravel框架学习笔记(二)项目实战之模型(Models)
2014/10/15 PHP
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
asp函数split()对应php函数explode()
2019/02/27 PHP
Javascript实现CheckBox的全选与取消全选的代码
2010/07/20 Javascript
jQuery 属性选择器element[herf*='value']使用示例
2013/10/20 Javascript
jquery操作select详解(取值,设置选中)
2014/02/07 Javascript
Javascript遍历table中的元素示例代码
2014/07/08 Javascript
jQuery带箭头提示框tooltips插件集锦
2014/11/17 Javascript
网页禁用右键菜单和鼠标拖动选择方法小结
2015/02/25 Javascript
JavaScript中操作字符串小结
2015/05/04 Javascript
分享经典的JavaScript开发技巧
2015/11/21 Javascript
jQuery动态生成表格及右键菜单功能示例
2017/01/13 Javascript
微信小程序request请求后台接口php的实例详解
2017/09/20 Javascript
JavaScript基于面向对象实现的猜拳游戏
2018/01/03 Javascript
JavaScript继承定义与用法实践分析
2018/05/28 Javascript
深入浅析Vue全局组件与局部组件的区别
2018/06/15 Javascript
一步步教你利用Docker设置Node.js
2018/11/20 Javascript
Vue核心概念Action的总结
2019/01/18 Javascript
详解Vue用cmd创建项目
2019/02/12 Javascript
vue父子组件通信的高级用法示例
2019/08/29 Javascript
微信小程序用户登录和登录态维护的实现
2020/12/10 Javascript
深入解析Python编程中JSON模块的使用
2015/10/15 Python
让python在hadoop上跑起来
2016/01/27 Python
浅谈numpy中linspace的用法 (等差数列创建函数)
2017/06/07 Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
2018/03/19 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
Python HTML解析器BeautifulSoup用法实例详解【爬虫解析器】
2019/04/05 Python
HTML5在IE10、火狐下中文乱码问题的解决方法
2013/11/18 HTML / CSS
欧舒丹英国官网:购买欧舒丹护手霜等明星产品
2017/01/17 全球购物
Watchshop德国:欧洲在线手表No.1
2019/06/20 全球购物
2014年学校团委工作总结
2014/12/20 职场文书
检举信的写法
2019/04/10 职场文书