python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例


Posted in Python onFebruary 28, 2020

PyQt5计数器控件QSpinBox简介

QSPINBox是一个计数器控件,允许用户选择一个整数值通过单击向上向下或者按键盘上的上下键来增加减少当前显示的值,当然用户也可以输入值

在默认情况下,QSpinBox的取值范围是(0-99),每次改变的步长是1

QSpinBox类和QDoubleSpinbox类均派生自QAbstractSpinBox类,QSpinBox用于处理整数值,QDoubleSpinBox则用于处理浮点数值,他们之间的区别就是处理数据的类型不同,其他功能基本相同,QDoubleSpinBox的默认精度是两位小数,但可以通过setDecimals()来改变

QSpinBox类中的常用方法

方法 描述
setMinimum() 设置计数器的下界
setMaximum() 设置计数器的上界
setRange() 设置计数器的最大值,最小值,步长值
setValue() 设置计数器的当前值
Value() 返回计数器的当前值
singleStep() 设置计数器的步长值

QSpinBox的使用实例

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui 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_())

运行效果如图

python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例

QSpinBox代码分析:

在这个例子中,有一个标签和计数器放置在一个垂直布局管理器中,并把这个垂直布局管理器放置在窗口中,将计数器的valueChanged信号连接到槽函数valuechange(),其核心代码是

self.sp.valueChanged.connect(self.Valuechange)

valuechange()函数把计数器的当前值设置到标签文本中

self.l1.setText('current value:'+str(self.sp.value()))

本文主要讲解了PyQt5计数器控件QSpinBox详细使用方法与实例,更多关于PyQt5控件知识请查看下面的相关链接

Python 相关文章推荐
Python和JavaScript间代码转换的4个工具
Feb 22 Python
详解Python中表达式i += x与i = i + x是否等价
Feb 08 Python
对Python 2.7 pandas 中的read_excel详解
May 04 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
Jan 30 Python
Pycharm运行加载文本出现错误的解决方法
Jun 27 Python
利用python list完成最简单的DB连接池方法
Aug 09 Python
python yield关键词案例测试
Oct 15 Python
Python实现字符串中某个字母的替代功能
Oct 21 Python
python中count函数简单用法
Jan 05 Python
jupyter notebook 恢复误删单元格或者历史代码的实现
Apr 17 Python
Python Opencv轮廓常用操作代码实例解析
Sep 01 Python
python xlsxwriter模块的使用
Dec 24 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
Feb 28 #Python
浅谈ROC曲线的最佳阈值如何选取
Feb 28 #Python
python GUI库图形界面开发之PyQt5多行文本框控件QTextEdit详细使用方法实例
Feb 28 #Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
Feb 28 #Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
Feb 28 #Python
Python post请求实现代码实例
Feb 28 #Python
python GUI库图形界面开发之PyQt5滑块条控件QSlider详细使用方法与实例
Feb 28 #Python
You might like
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
WHOIS类的修改版
2006/10/09 PHP
php smarty 二级分类代码和模版循环例子
2011/06/01 PHP
解析wamp5下虚拟机配置文档
2013/06/27 PHP
PHP生成静态HTML文档实现代码
2016/06/23 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
php版微信公众平台入门教程之开发者认证的方法
2016/09/26 PHP
php简单中奖算法(实例)
2017/08/15 PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
2020/01/07 PHP
js封装的textarea操作方法集合(兼容很好)
2010/11/16 Javascript
Node.js的包详细介绍
2015/01/14 Javascript
jQuery检测鼠标左键和右键点击的方法
2015/03/17 Javascript
JavaScript知识点整理
2015/12/09 Javascript
AngularJS学习笔记(三)数据双向绑定的简单实例
2016/11/08 Javascript
JavaScript实现图片懒加载(Lazyload)
2016/11/28 Javascript
使用jQuery的ajax方法向服务器发出get和post请求的方法
2017/01/13 Javascript
详解mpvue开发小程序小总结
2018/07/25 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
[01:10]DOTA2亚洲邀请赛 征战号角响彻全场
2015/01/06 DOTA
[59:42]Secret vs Alliacne 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
python的Crypto模块实现AES加密实例代码
2018/01/22 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
tensorflow 加载部分变量的实例讲解
2018/07/27 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
pytorch制作自己的LMDB数据操作示例
2019/12/18 Python
使用pickle存储数据dump 和 load实例讲解
2019/12/30 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
以实惠的价格提供高品质的时尚:Newchic
2018/01/18 全球购物
Oasis服装官网:时尚女装在线
2020/07/09 全球购物
《盲人摸象》教学反思
2014/02/16 职场文书
2014年团队工作总结
2014/11/24 职场文书
中学感恩教育活动总结
2015/05/05 职场文书
升职感谢领导的话语及升职感谢信
2019/06/24 职场文书
基于Python的EasyGUI学习实践
2021/05/07 Python