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栈算法的实现与简单应用示例
Nov 01 Python
python3.x上post发送json数据
Mar 04 Python
numpy 计算两个数组重复程度的方法
Nov 07 Python
Django之模型层多表操作的实现
Jan 08 Python
解决Python找不到ssl模块问题 No module named _ssl的方法
Apr 29 Python
win8.1安装Python 2.7版环境图文详解
Jul 01 Python
简单了解django索引的相关知识
Jul 17 Python
PyQt5使用QTimer实现电子时钟
Jul 29 Python
Python基础之变量基本用法与进阶详解
Jan 03 Python
Python实现bilibili时间长度查询的示例代码
Jan 14 Python
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
Jun 05 Python
python manim实现排序算法动画示例
Aug 14 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
全国FM电台频率大全 - 1 北京市
2020/03/11 无线电
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
php结合正则批量抓取网页中邮箱地址
2015/05/19 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
2016/02/01 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
PHP操作Redis常用命令的实例详解
2020/12/23 PHP
JavaScript 版本自动生成文章摘要
2008/07/23 Javascript
jquery连缀语法如何实现
2012/11/29 Javascript
js之ActiveX控件使用说明 new ActiveXObject()
2014/03/03 Javascript
JavaScript  cookie 跨域访问之广告推广
2016/04/20 Javascript
BootStrap glyphicons 字体图标实现方法
2016/05/01 Javascript
浅谈JavaScript变量的自动转换和语句
2016/06/12 Javascript
Javascript的动态增加类的实现方法
2016/10/20 Javascript
用nodeJS搭建本地文件服务器的几种方法小结
2017/03/16 NodeJs
基于jquery实现多级菜单效果
2017/07/25 jQuery
Vue自定义过滤器格式化数字三位加一逗号实现代码
2018/03/23 Javascript
Node.js API详解之 os模块用法实例分析
2020/05/06 Javascript
JSON获取属性值方法代码实例
2020/06/30 Javascript
[36:33]Ti4 循环赛第四日 附加赛NEWBEE vs Mouz
2014/07/13 DOTA
简单介绍Python中的filter和lambda函数的使用
2015/04/07 Python
python:socket传输大文件示例
2017/01/18 Python
简单易懂的python环境安装教程
2017/07/13 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
Django时区详解
2019/07/24 Python
python 使用shutil复制图片的例子
2019/12/13 Python
python 多进程队列数据处理详解
2019/12/23 Python
pycharm工具连接mysql数据库失败问题
2020/04/01 Python
python中get和post有什么区别
2020/06/19 Python
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
美国全球旅游运营商:Pacific Holidays
2018/06/18 全球购物
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
介绍一下常见的木马种类
2014/11/15 面试题
Python里面如何实现tuple和list的转换
2012/06/13 面试题
会计主管岗位职责
2014/01/03 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书
如何用python清洗文件中的数据
2021/06/18 Python