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-基础-入门 简介
Aug 09 Python
python使用Tkinter显示网络图片的方法
Apr 24 Python
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
May 02 Python
Python函数中的函数(闭包)用法实例
Mar 15 Python
python中类变量与成员变量的使用注意点总结
Apr 29 Python
Pycharm学习教程(7)虚拟机VM的配置教程
May 04 Python
Python代码太长换行的实现
Jul 05 Python
纯python进行矩阵的相乘运算的方法示例
Jul 17 Python
django如何通过类视图使用装饰器
Jul 24 Python
使用Python的Turtle绘制哆啦A梦实例
Nov 21 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 Python
Python如何设置指定窗口为前台活动窗口
Aug 12 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/08/21 PHP
php中hashtable实现示例分享
2014/02/13 PHP
PHP通过加锁实现并发情况下抢码功能
2016/08/10 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
双击滚屏-常用推荐
2006/11/29 Javascript
JavaScript 选中文字并响应获取的实现代码
2011/08/28 Javascript
在网站上应该用的30个jQuery插件整理
2011/11/03 Javascript
关于javascript中的typeof和instanceof介绍
2012/12/04 Javascript
jQuery隔行变色与普通JS写法的对比
2013/04/21 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
探讨:JavaScript ECAMScript5 新特性之get/set访问器
2016/05/05 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
2017/08/31 Javascript
vue-cli开发环境实现跨域请求的方法
2018/04/07 Javascript
一个基于react的图片裁剪组件示例
2018/04/18 Javascript
webpack+vue-cli项目中引入外部非模块格式js的方法
2018/09/28 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
JavaScript获取当前url路径过程解析
2019/12/27 Javascript
vue el-upload上传文件的示例代码
2020/12/21 Vue.js
mapboxgl实现带箭头轨迹线的代码
2021/01/04 Javascript
[01:30]DOTA2上海特锦赛现场采访 Loda倾情献唱
2016/03/25 DOTA
python如何查看系统网络流量的信息
2016/09/12 Python
Python中支持向量机SVM的使用方法详解
2017/12/26 Python
Python列表的切片实例讲解
2019/08/20 Python
Python3 selenium 实现QQ群接龙自动化功能
2020/04/17 Python
简单了解Python字典copy与赋值的区别
2020/09/16 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
浅谈HTML5 FileReader分布读取文件以及其方法简介
2017/11/09 HTML / CSS
C++面试题目
2013/06/25 面试题
什么是JNDI的上下文?如何初始化JNDI上下文
2012/03/10 面试题
九年级物理教学反思
2014/01/29 职场文书
校园学雷锋活动月总结
2014/03/09 职场文书
房屋过户委托书范本
2014/10/07 职场文书
经销商会议开幕词
2016/03/04 职场文书
分享一些Java的常用工具
2021/06/11 Java/Android