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自动格式化json文件的方法
Mar 11 Python
Python实现简单的HttpServer服务器示例
Sep 25 Python
对Python 数组的切片操作详解
Jul 02 Python
Django之Mode的外键自关联和引用未定义的Model方法
Dec 15 Python
关于python下cv.waitKey无响应的原因及解决方法
Jan 10 Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
Jun 13 Python
Python Django模板之模板过滤器与自定义模板过滤器示例
Oct 18 Python
Python 一行代码能实现丧心病狂的功能
Jan 18 Python
python之MSE、MAE、RMSE的使用
Feb 24 Python
详解用Pytest+Allure生成漂亮的HTML图形化测试报告
Mar 31 Python
Pycharm Git 设置方法
Sep 15 Python
python爬虫利用代理池更换IP的方法步骤
Feb 21 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
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/21 PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
2013/01/11 PHP
Thinkphp+smarty+uploadify实现无刷新上传
2015/07/30 PHP
一个加密JavaScript的开源工具PACKER2.0.2
2006/11/04 Javascript
一个JS的日期格式化算法示例
2013/07/31 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
javascript电商网站抢购倒计时效果实现
2015/11/19 Javascript
JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
2016/02/25 Javascript
Bootstrap表单布局
2016/07/19 Javascript
js创建数组的简单方法
2016/07/27 Javascript
JS中常用的正则表达式
2016/09/29 Javascript
浅谈js的ajax的异步和同步请求的问题
2016/10/07 Javascript
seajs学习教程之基础篇
2016/10/20 Javascript
angular框架实现全选与单选chekbox的自定义
2017/07/06 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
js+css实现红包雨效果
2018/07/12 Javascript
解决layer.confirm快速点击会重复触发事件的问题
2019/09/23 Javascript
vue实现移动端省市区选择
2019/09/27 Javascript
浅谈Vuex的this.$store.commit和在Vue项目中引用公共方法
2020/07/24 Javascript
带你使用webpack快速构建web项目的方法
2020/11/12 Javascript
Python3安装Scrapy的方法步骤
2017/11/23 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
2019/02/20 Python
python3实现高效的端口扫描
2019/08/31 Python
Django之腾讯云短信的实现
2020/06/12 Python
Python操作Word批量生成合同的实现示例
2020/08/28 Python
详解通过变换矩阵实现canvas的缩放功能
2019/01/14 HTML / CSS
销售顾问岗位职责
2014/02/25 职场文书
小学毕业典礼主持词
2014/03/27 职场文书
法人委托书
2014/07/31 职场文书
计划生育证明格式及范本
2014/10/09 职场文书
2015年公共机构节能宣传周活动总结
2015/03/26 职场文书
采购内勤岗位职责
2015/04/13 职场文书
医院合作意向书范本
2015/05/08 职场文书
python3实现无权最短路径的方法
2021/05/12 Python
详解CSS不定宽溢出文本适配滚动
2021/05/24 HTML / CSS
Redis入门教程详解
2021/08/30 Redis