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下如何让web元素的生成更简单的分析
Jul 17 Python
python文件和目录操作函数小结
Jul 11 Python
Python实现的飞速中文网小说下载脚本
Apr 23 Python
浅谈Python 中整型对象的存储问题
May 16 Python
python虚拟环境virualenv的安装与使用
Dec 18 Python
利用python打印出菱形、三角形以及矩形的方法实例
Aug 08 Python
python 将列表中的字符串连接成一个长路径的方法
Oct 23 Python
python单例模式的多种实现方法
Jul 26 Python
Pycharm 2020最新永久激活码(附最新激活码和插件)
Sep 17 Python
Tensorflow限制CPU个数实例
Feb 06 Python
Python实现LR1文法的完整实例代码
Oct 25 Python
python安装第三方库如xlrd的方法
Oct 31 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获取当前文件所在目录 getcwd()函数
2009/05/13 PHP
解析smarty模板中类似for的功能实现
2013/06/18 PHP
php生成缩略图填充白边(等比缩略图方案)
2013/12/25 PHP
php递归方法实现无限分类实例代码
2014/02/28 PHP
PHP中UNIX时间戳和日期间的转换与计算实例
2014/11/19 PHP
php中10个不同等级压缩优化图片操作示例
2016/11/14 PHP
php图片合成方法(多张图片合成一张)
2017/11/25 PHP
PHP手机号码及邮箱正则表达式实例解析
2020/07/11 PHP
javascript 学习之旅 (2)
2009/02/05 Javascript
ExtJS 2.2.1的grid控件在ie6中的显示问题
2009/05/04 Javascript
checkbox全选/取消全选以及checkbox遍历jQuery实现代码
2009/12/02 Javascript
javascript加号"+"的二义性说明
2013/03/04 Javascript
jQuery 淡入淡出 png图在ie8下有黑色边框的解决方法
2013/03/05 Javascript
jQuery遍历DOM的父级元素、子级元素和同级元素的方法总结
2016/07/07 Javascript
js简单获取表单中单选按钮值的方法
2016/08/23 Javascript
JS简单实现自定义右键菜单实例
2017/05/31 Javascript
基于vue的短信验证码倒计时demo
2017/09/13 Javascript
canvas基础绘制-绚丽倒计时的实例
2017/09/17 Javascript
基于zTree树形菜单的使用实例
2017/12/25 Javascript
javascript变量提升和闭包理解
2018/03/12 Javascript
nodeJS服务器的创建和重新启动的实现方法
2018/05/12 NodeJs
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
vue动画打包后失效问题的解决方法
2018/09/18 Javascript
Python Requests库基本用法示例
2018/08/20 Python
python远程连接MySQL数据库
2019/04/19 Python
python db类用法说明
2020/07/07 Python
实例讲解CSS3中Transform的perspective属性的用法
2016/04/22 HTML / CSS
html5教程制作简单画板代码分享
2013/12/04 HTML / CSS
四个太阳教学反思
2014/02/01 职场文书
2015大学生自我评价范文
2015/03/03 职场文书
求职自荐信怎么写
2015/03/04 职场文书
2015年银行工作总结范文
2015/04/01 职场文书
法院答辩状格式
2015/05/22 职场文书
带你学习MySQL执行计划
2021/05/31 MySQL
微信小程序中wxs文件的一些妙用分享
2022/02/18 Javascript
python运算符之与用户交互
2022/04/13 Python