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 相关文章推荐
分享15个最受欢迎的Python开源框架
Jul 13 Python
Python写的PHPMyAdmin暴力破解工具代码
Aug 06 Python
简单理解Python中基于生成器的状态机
Apr 13 Python
详解Python编程中time模块的使用
Nov 20 Python
Python优先队列实现方法示例
Sep 21 Python
python绘制散点图并标记序号的方法
Dec 11 Python
python远程调用rpc模块xmlrpclib的方法
Jan 11 Python
python微信撤回监测代码
Apr 29 Python
python tkinter实现屏保程序
Jul 30 Python
pycharm 配置svn的图文教程(手把手教你)
Jan 15 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
Jan 29 Python
移除Selenium中window.navigator.webdriver值
Jun 10 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 一元分词算法
2009/11/30 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
2011/10/13 PHP
php 团购折扣计算公式
2011/11/24 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
微信公众平台之快递查询功能用法实例
2015/04/14 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
2017/02/10 PHP
PHP中“=>
2019/03/01 PHP
JavaScript 中的replace方法说明
2007/04/13 Javascript
制作jquery遮罩层效果导航菜单代码分享
2013/12/25 Javascript
jQuery的context属性用法实例
2014/12/27 Javascript
js正则表达式匹配数字字母下划线等
2015/04/14 Javascript
jQuery实现带延迟的二级tab切换下拉列表效果
2015/09/01 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
2017/03/30 Javascript
使用vue-router为每个路由配置各自的title
2018/07/30 Javascript
JavaScript Canvas编写炫彩的网页时钟
2019/10/16 Javascript
js new Date()实例测试
2019/10/31 Javascript
vue项目中自定义video视频控制条的实现代码
2020/04/26 Javascript
vue总线机制(bus)知识点详解
2020/05/10 Javascript
教你安装python Django(图文)
2013/11/04 Python
35个Python编程小技巧
2014/04/01 Python
Python之py2exe打包工具详解
2017/06/14 Python
多个应用共存的Django配置方法
2018/05/30 Python
python 字典中文key处理,读取,比较方法
2018/07/06 Python
python实现从尾到头打印单链表操作示例
2020/02/22 Python
使用Python将Exception异常错误堆栈信息写入日志文件
2020/04/08 Python
Pytorch高阶OP操作where,gather原理
2020/04/30 Python
keras导入weights方式
2020/06/12 Python
Python调用飞书发送消息的示例
2020/11/10 Python
CSS3等相关属性制作分页导航实现代码
2012/12/24 HTML / CSS
HTML5中input输入框默认提示文字向左向右移动的示例代码
2020/09/10 HTML / CSS
俄语专业职业生涯规划
2014/02/26 职场文书
党性教育心得体会
2014/09/03 职场文书
法人委托书范本
2014/09/15 职场文书
公司副总经理岗位职责
2014/10/01 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
MySQL慢查询优化解决问题
2022/03/17 MySQL