QSpinBox 简介

QSPINBox是一个计数器控件,允许用户选择一个整数值通过单击向上向下或者按键盘上的上下键来增加减少当前显示的值,当然用户也可以输入值在默认情况下,QSpinBox的取值范围是(0-99),每次改变的步长是1。QSpinBox类和QDoubleSpinbox类均派生自QAbstractSpinBox类,QSpinBox用于处理整数值,QDoubleSpinBox则用于处理浮点数值,他们之间的区别就是处理数据的类型不同,其他功能基本相同,QDoubleSpinBox的默认精度是两位小数,但可以通过setDecimals()来改变。

QSpinBox类中的常用方法

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

QSpinBox类中的常用信号

信号 描述
valueChanged 计数器值变更事件

QSpinBox效果截图:

功能描述:点击QSpinBox计数器,更新文本相关数据信息。

PyQt 模型设计:

PyQt 设计器截图:

*.ui 转换为*.py 代码

# -*- coding: utf-8 -*-# Form implementation generated from reading ui file 'untitled5.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.
import sysfrom PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindowclass Ui_MainWindow(object):def setupUi(self, MainWindow):MainWindow.setObjectName("MainWindow")MainWindow.resize(800, 600)self.centralwidget = QtWidgets.QWidget(MainWindow)self.centralwidget.setObjectName("centralwidget")self.widget = QtWidgets.QWidget(self.centralwidget)self.widget.setGeometry(QtCore.QRect(80, 110, 92, 22))self.widget.setObjectName("widget")self.horizontalLayout = QtWidgets.QHBoxLayout(self.widget)self.horizontalLayout.setContentsMargins(0, 0, 0, 0)self.horizontalLayout.setObjectName("horizontalLayout")self.label = QtWidgets.QLabel(self.widget)self.label.setObjectName("label")self.horizontalLayout.addWidget(self.label)self.spinBox = QtWidgets.QSpinBox(self.widget)self.spinBox.setObjectName("spinBox")self.horizontalLayout.addWidget(self.spinBox)# 计算器添加数值变更事件监听器self.spinBox.valueChanged.connect(self.Valuechange)MainWindow.setCentralWidget(self.centralwidget)self.retranslateUi(MainWindow)QtCore.QMetaObject.connectSlotsByName(MainWindow)def retranslateUi(self, MainWindow):_translate = QtCore.QCoreApplication.translateMainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))self.label.setText(_translate("MainWindow", "计数值:0"))def Valuechange(self):# 显示当前计数器地数值self.label.setText('当前值:' + str(self.spinBox.value()))if __name__ == '__main__':app = QApplication(sys.argv)MainWindow = QMainWindow()ui = Ui_MainWindow()ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_())

需要向PyUIC 生成的代码,添加如下代码片段:

重点实现QSpinBox事件绑定

        # 计算器添加数值变更事件监听器self.spinBox.valueChanged.connect(self.Valuechange)
 def Valuechange(self):# 显示当前计数器地数值self.label.setText('当前值:' + str(self.spinBox.value()))

PyQt5组件之QSpinBox相关推荐

  1. PyQt5组件之QPixmap

    QPixmap简介 QPixmap类用于绘图设备的图像显示,它可以作为一个QPainterDevice对象,也可以加载到一个控件中,通常是标签或者按钮,用于在标签或按钮上显示图像QPixmap可以读取 ...

  2. PyQt5 组件之QTableView锁定首列

    未锁定的QTableView import sys from PyQt5.QtWidgets import QTableView, QWidget, QApplication, QVBoxLayout ...

  3. 【PyQt5 知识点示例代码】布局、菜单、信号与槽、对话框、组件

    PyQt5笔记 重写按钮的关闭事件 closeEvent 布局 绝对布局 盒布局 网络布局 状态栏.菜单栏.子菜单.勾选菜单.右键菜单 信号与槽 点击按钮显示窗口 重写keyPressEvent - ...

  4. pyqt5 qstring在哪个库_从Qt C++类库到PyQt5

    2.6.1 帮助信息的查找 1.在Qt Creator中查找帮助信息 安装PyQt5时不会安装完整的类库帮助文档,PyQt5的在线Reference Guide提供了PyQt5使用中的一些关键技术问题 ...

  5. QT开发(十)——QT输入组件

    QT开发(十)--QT输入组件 QT中有十三中输入组件,分别是下拉列表框QComboBox.字体下拉框QFontComboBox.行编辑框QLineEdit.文本编辑框QTextEdit.无格式文本编 ...

  6. python pyqt教程_『开发技巧』PyQt5入门教程

    PyQt5相关 PyQt5是一套来自Digia的Qt5应用框架和Python的粘合剂.支持Python2.x和Python3.x版本.本教程使用Pyhton 3.Qt库是最强大的GUI支持库的一种.P ...

  7. Hello Qt(十)——QT输入组件

    一.QComboBox下拉列表框 1.QComboBox组件简介 QComboBox下拉框继承自QWidget,用于有多个选项的下拉框. 2.QComboBox组件属性 QComboBox组件属性设置 ...

  8. 安装PyQt5和相应的pycharm设置和在pycharm验证PyQt安装是否成功

    1.软件环境 Python3.7 pycharm-community-2020.1.1(我的是社区版,专业版安装过程也类似) 2.安装PyQt5组件 2.1安装PyQt5 打开命令行窗口,输入    ...

  9. Vscode安装第三方库PyQt5和配置Qt

    小白在Vscode安装第三方库PyQt5和配置Qt 安装pyqt5组件和可能遇到的问题(借鉴) PyQt5以及PyQt5-tools(designer) pip版本过低(如果出现问题,安装pyqt5组 ...

最新文章

  1. 迭代器、代码块、闭包
  2. wchar_t*,wchar_t,wchat_t数组,char,char*,char数组,std::string,std::wstring,CString 以及system(command)...
  3. mysql 101_MySQL 调优/优化的 101 个建议!
  4. java---数组常用的方法:
  5. 专业的Excel管理工具LibXL V3.8.0发布 | 附下载
  6. 406.根据身高重建队列
  7. ev3编程 越野机器人_乐高机器人EV3,让机器人动起来
  8. 加性高斯白噪声 AWGN
  9. Java private方法访问
  10. Codingame平台“CHUCK NORRIS”的Python实现
  11. [ZT]一位美眉出差到深圳,被黑心的出租车司机绕路不说,而且把妹妹扔在路边,带着她的行李就跑了。...
  12. Echarts实现多个Y轴,2个以上不同计量单位的折线图数据横向对比
  13. CentOS Firefox播放视频--安装Flash插件
  14. vue ssr搭建服务端渲染项目
  15. javax.mail.AuthenticationFailedException: 535 authentication failed(邮件发送报错)
  16. day 18 类与类之间的关系
  17. 【学习笔记】刘晓艳英语语法笔记(2/6)——并列句
  18. 哪吒:若求职不易,那就跟它斗争到底
  19. 关于win7开热点的一些小备忘
  20. 使用OpenCV检测和追踪车辆

热门文章

  1. MySQL忘记密码怎么办?MySQL修改密码(简单有效哦)
  2. 硬盘安装ubuntu16.04
  3. 微信小程序之Flex布局
  4. ESXi主机嵌套虚拟化,开启CPU硬件虚拟化支持,以此来搭建EXI和Vmware workstation虚拟化学习环境
  5. [Shader] Shader Cookbook 基于物理的渲染[4]
  6. VIVO手机聊天打字慢?使用这些方法,2分钟就能打出500字
  7. 关于灯的盏数的亮灭问题c++
  8. android功耗iphone,史上最强续航的iPhone实力究竟如何?我们做了一次对比测试
  9. php的libxml函数
  10. phpstudy mysql3306端口被占用_【亲测】启动PHPstudy提醒80、3306端口被占用的3种解决办法...