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的print用法示例
Feb 11 Python
Django自定义认证方式用法示例
Jun 23 Python
Windows下python3.7安装教程
Jul 31 Python
Python实现的建造者模式示例
Aug 06 Python
详解python如何在django中为用户模型添加自定义权限
Oct 15 Python
python训练数据时打乱训练数据与标签的两种方法小结
Nov 08 Python
python从子线程中获得返回值的方法
Jan 30 Python
Python实现合并两个有序链表的方法示例
Jan 31 Python
Python实现PyPDF2处理PDF文件的方法示例
Sep 25 Python
Tensorflow tf.dynamic_partition矩阵拆分示例(Python3)
Feb 07 Python
Matplotlib使用Cursor实现UI定位的示例代码
Mar 12 Python
对象析构函数__del__在Python中何时使用
Mar 22 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简介
2006/10/09 PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
2014/06/05 PHP
大家在抢红包,程序员在研究红包算法
2015/08/31 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
2017/02/08 PHP
javascript FormatNumber函数实现方法
2008/12/30 Javascript
JavaScript入门教程(8) Location地址对象
2009/01/31 Javascript
自己的js工具 Cookie 封装
2009/08/21 Javascript
jquery photoFrame 图片边框美化显示插件
2010/06/28 Javascript
javascript 原型继承介绍
2011/08/30 Javascript
javascript实现表格增删改操作实例详解
2015/05/15 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
详解Vue Elememt-UI构建管理后台
2018/02/27 Javascript
vue遍历生成的输入框 绑定及修改值示例
2019/10/30 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
Vue父子组件传值的一些坑
2020/09/16 Javascript
[03:42]2016国际邀请赛中国区预选赛首日现场玩家采访
2016/06/26 DOTA
python与caffe改变通道顺序的方法
2018/08/04 Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
2019/07/23 Python
基于TensorFlow中自定义梯度的2种方式
2020/02/04 Python
对tensorflow中cifar-10文档的Read操作详解
2020/02/10 Python
Python数据可视化常用4大绘图库原理详解
2020/10/23 Python
用python对excel查重
2020/12/07 Python
Flask处理Web表单的实现方法
2021/01/31 Python
canvas烟花特效锦集
2018/01/17 HTML / CSS
家长写给孩子的评语
2014/04/18 职场文书
活动总结格式范文
2014/04/26 职场文书
勾股定理课后反思
2014/04/26 职场文书
2014年科室工作总结
2014/11/20 职场文书
2014年反腐倡廉工作总结
2014/12/05 职场文书
家属答谢词
2015/01/05 职场文书
放牛班的春天观后感
2015/06/01 职场文书
招商银行工作证明
2015/06/17 职场文书
工作会议简报
2015/07/20 职场文书
导游词之南京栖霞山
2019/10/18 职场文书
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
2021/05/21 PostgreSQL
java泛型通配符详解
2021/07/25 Java/Android