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怎么学好python?
Oct 07 Python
Python httplib模块使用实例
Apr 11 Python
Python中的XML库4Suite Server的介绍
Apr 14 Python
解决安装pycharm后不能执行python脚本的问题
Jan 19 Python
python实现点击按钮修改数据的方法
Jul 17 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
python之拟合的实现
Jul 19 Python
浅谈Python_Openpyxl使用(最全总结)
Sep 05 Python
Python通过文本和图片生成词云图
May 21 Python
python uuid生成唯一id或str的最简单案例
Jan 13 Python
Python快速实现一键抠图功能的全过程
Jun 29 Python
Python中的嵌套循环详情
Mar 23 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
apache rewrite_module模块使用教程
2008/01/10 PHP
php写入数据到CSV文件的方法
2015/03/14 PHP
php实现粘贴截图并完成上传功能
2015/05/17 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
网站导致浏览器崩溃的原因总结(多款浏览器) 推荐
2010/04/15 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
jquery入门—选择器实现隔行变色实例代码
2013/01/04 Javascript
JQuery动画和停止动画实例代码
2013/03/01 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
2015/03/12 Javascript
使用vue.js开发时一些注意事项
2016/04/27 Javascript
JavaScript中的原型继承基础学习教程
2016/05/06 Javascript
jQuery弹出遮罩层效果完整示例
2016/09/13 Javascript
JSP防止网页刷新重复提交数据的几种方法
2016/11/19 Javascript
switchery按钮的使用方法
2017/12/18 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
使用jquery实现轮播图效果
2021/01/02 jQuery
Python自动化开发学习之三级菜单制作
2017/07/14 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
python矩阵的转置和逆转实例
2018/12/12 Python
python获取时间戳的实现示例(10位和13位)
2020/09/23 Python
虚拟环境及venv和virtualenv的区别说明
2021/02/05 Python
关于canvas绘制模糊问题的解决方法
2019/09/24 HTML / CSS
AVON雅芳官网:世界上最大的美容化妆品公司之一
2016/11/02 全球购物
Bose法国官网:购买耳机、扬声器、家庭影院、专业音响
2017/12/21 全球购物
新加坡最受追捧的体验平台:Hapz
2018/01/01 全球购物
JoJo Maman Bébé爱尔兰官网:英国最受欢迎的精品母婴品牌
2020/12/20 全球购物
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
2012/06/27 面试题
JAVA程序设计笔试题面试题一套
2015/07/28 面试题
门诊挂号室室长岗位职责
2013/11/27 职场文书
学习心得体会
2014/01/01 职场文书
关于分班的感言
2015/08/04 职场文书
MySQL 重写查询语句的三种策略
2021/05/10 MySQL
python 经纬度求两点距离、三点面积操作
2021/06/03 Python
浅谈MySQL user权限表
2021/06/18 MySQL