七、PyQt5实现Python界面设计_滑块控件(QSlider)与计数器控件(QSpinBox)

2023-11-02

目录

一、QSlider滑块控件

(1)简介

(2)常用函数

(3)代码演示

二、QSpinBox计数器控件

(1)简介

(2)常用函数

(3)代码演示


一、QSlider滑块控件

(1)简介

1、水平或者垂直的滑动控件,一般用来设置数字,快速滑动来调整数字

2、用给定的parent构造一个垂直的滑块。用给定的parent构造一个滑块。方向参数确定滑块是水平的还是垂直的。有效值是Vertical和Horizo​​n

(2)常用函数

1、initStyleOption(option):使用此QSlider中的值初始化选项。当子类需要QStyleOptionSlider,但又不想自己填写所有信息时,此方法很有用。

2、setTickInterval(ti):此属性保存刻度线之间的间隔。这是一个值间隔,而不是像素间隔。如果为0,则滑块将在singleStep和pageStep之间进行选择。默认值为0。

3、setTickPosition(position):此属性保存此滑块的刻度线位置。有效值由TickPosition枚举描述。默认值为NoTicks。

4、tickInterval():此属性保存刻度线之间的间隔。这是一个值间隔,而不是像素间隔。如果为0,则滑块将在singleStep和pageStep之间进行选择。默认值为0。

5、tickPosition():此属性保存此滑块的刻度线位置。有效值由TickPosition枚举描述。默认值为NoTicks。

6、官方文档:QSlider — Qt for Python

(3)代码演示

'''
滑块控件(QSlider)
'''

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class QSliderDemo(QWidget):
    def __init__(self):
        super(QSliderDemo,self).__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('滑块控件演示')
        self.resize(300,700)

        layout = QVBoxLayout()
        self.label = QLabel('你好 PyQt5')
        self.label.setAlignment(Qt.AlignCenter)

        layout.addWidget(self.label)

        self.slider = QSlider(Qt.Horizontal)



        # 设置最小值
        self.slider.setMinimum(12)
        # 设置最大值
        self.slider.setMaximum(48)

        # 步长
        self.slider.setSingleStep(3)

        # 设置当前值
        self.slider.setValue(18)

        # 设置刻度的位置,刻度在下方
        self.slider.setTickPosition(QSlider.TicksBelow)
        # 设置刻度的间隔
        self.slider.setTickInterval(6)

        layout.addWidget(self.slider)
        self.slider.valueChanged.connect(self.valueChange)

        self.slider1 = QSlider(Qt.Vertical)
        layout.addWidget(self.slider1)
        # 设置最小值
        self.slider1.setMinimum(10)
        # 设置最大值
        self.slider1.setMaximum(60)

        # 步长
        self.slider1.setSingleStep(5)

        # 设置当前值
        self.slider1.setValue(30)

        # 设置刻度的位置,刻度在下方
        self.slider1.setTickPosition(QSlider.TicksLeft)
        # 设置刻度的间隔
        self.slider1.setTickInterval(2)
        self.slider1.valueChanged.connect(self.valueChange)
        self.setLayout(layout)

    def valueChange(self):
        print('当前值:%s' % self.sender().value())
        size = self.sender().value()
        self.label.setFont(QFont('Arial',size))
if __name__ == '__main__':
    app = QApplication(sys.argv)
    main = QSliderDemo()
    main.show()
    app.exec_()
    del app

二、QSpinBox计数器控件

(1)简介

1、QSpinBox计数器控件同样有快速设置数字的用处,区分于滑动控件,它可以进行直接的输入填写

2、构造一个旋转框,其最小值为0,最大值为99,步进值为1。该值初始设置为0。它是parent的父级。

(2)常用函数

1、cleanText():此属性保存旋转框的文本,但不包括任何前缀,后缀或开头或结尾的空格。

2、displayIntegerBase():此属性保留用于显示旋转框值的基数。默认值为10。

3、maximum():此属性保留旋转框的最大值。设置此属性时,将根据需要调整最小值,以确保范围保持有效。默认最大值为99。

4、minimum():此属性保留旋转框的最小值。设置此属性时,如有必要,将调整最大值,以确保范围保持有效。默认最小值为0。

5、prefix():此属性保留旋转框的前缀。该前缀位于显示值的开头。典型用途是显示度量单位或货币符号。例如:要关闭前缀显示,请将此属性设置为空字符串。默认为无前缀。设置value()== minimum()和specialValueText()时不显示前缀。如果未设置前缀,则返回空字符串。

6、setDisplayIntegerBase(base):此属性保留用于显示旋转框值的基数。默认值为10。

7、setMaximum(max):此属性保留旋转框的最大值。设置此属性时,将根据需要调整最小值,以确保范围保持有效。默认最大值为99。

8、setMinimum(min):此属性保留旋转框的最小值。设置此属性时,如有必要,将调整最大值,以确保范围保持有效。默认最小值为0。

9、setRange(min,max):通过一个函数调用即可设置最小值和最大值的便捷功能等效于

10、官方文档:QSpinBox — Qt for Python

(3)代码演示

'''
计数器控件(QSpinBox)
'''

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class QSpinBoxDemo(QWidget):
    def __init__(self):
        super(QSpinBoxDemo,self).__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('QSpinBox演示')
        self.resize(300,100)

        layout = QVBoxLayout()
        self.label = QLabel('当前值')
        self.label.setAlignment(Qt.AlignCenter)

        layout.addWidget(self.label)

        self.sb = QSpinBox()
        self.sb.setValue(18)#设置当前值
        self.sb.setRange(10,38)#设置范围
        self.sb.setSingleStep(3)#设置布局
        layout.addWidget(self.sb)
        self.sb.valueChanged.connect(self.valueChange)#值变化时触发
        self.setLayout(layout)

    def valueChange(self):
        self.label.setText('当前值:' + str(self.sb.value()))#获取当前值

if __name__ == '__main__':
    app = QApplication(sys.argv)
    main = QSpinBoxDemo()
    main.show()
    app.exec_()
    del app

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

七、PyQt5实现Python界面设计_滑块控件(QSlider)与计数器控件(QSpinBox) 的相关文章

  • sklearn 估计器管道的参数无效

    我正在实现 O Reilly 书中的一个示例 Python 机器学习简介 使用 Python 2 7 和 sklearn 0 16 我正在使用的代码 pipe make pipeline TfidfVectorizer LogisticRe
  • str.translate 与 str.replace - 何时使用哪一个?

    何时以及为什么使用前者而不是后者 反之亦然 目前尚不完全清楚为什么有些人使用前者以及为什么有些人使用后者 它们有不同的目的 translate只能用任意字符串替换单个字符 但一次调用可以执行多次替换 它的参数是一个特殊的表 它将单个字符映射
  • scipy.optimize on pandas dataframe

    我试图搜索它 但结果很差 有人可以向我解释一下如何在 Pandas DataFrame 上执行 optimize minimize 以便最小化 DataFrame 中的类别和结果列之间的错误 考虑这个例子 import pandas as
  • Keras model.predict 函数给出输入形状错误

    我已经在 Tensorflow 中实现了通用句子编码器 现在我正在尝试预测句子的类概率 我也将字符串转换为数组 Code if model model type universal classifier basic class probs
  • Matplotlib 图例,跨列添加项目而不是向下添加项目

    对于下面的简单绘图 有没有办法让 matplotlib 填充图例 以便它从左到右填充行 而不是第一列然后第二列 gt gt gt from pylab import gt gt gt x arange 2 pi 2 pi 0 1 gt gt
  • 如何在Windows中的Python 3.9下pip安装pickle?

    我需要pickle https docs python org 3 9 library pickle html module pickle包安装在我的下面Python 3 9在 Windows 10 下 我尝试过的 当尝试与pip inst
  • 在linux上安装python ssl模块,无需重新编译

    是否可以在已经安装了 OpenSSL 的 Linux 机器上安装 python 的 SSL 模块 而无需重新编译 python 我希望它就像复制几个文件并将它们包含在库路径中一样简单 Python版本是2 4 3 谢谢 是否可以在已经安装了
  • 用 Python 绘制直方图

    我有两个列表 x 和 y x 包含字母表 A Z Y 包含它们在文件中的频率 我尝试研究如何在直方图中绘制这些值 但在理解如何绘制它方面没有成功 n bins patches plt hist x 26 normed 1 facecolor
  • 如何从hdfs读取文件[重复]

    这个问题在这里已经有答案了 我在 project1目录下的hadoop文件系统中有一个文本文件名mr txt 我需要编写 python 代码来读取文本文件的第一行 而不将 mr txt 文件下载到本地 但我无法从 hdfs 打开 mr tx
  • 数据框中 .map(str) 和 .astype(str) 有什么区别

    我有一个数据框 其列名为 col1 和 col2 的整数类型条目 我想将 col1 和 col2 的条目以及其间的 点 连接起来 我搜索并发现添加两个列条目 df col df col1 map str df col2 map str 并添
  • Python-验证我的文档 xls 中是否存在工作表

    我正在尝试在空闲时间设计一个小程序 加载 xls 文件 然后在要扫描的文档中选择一张纸 步骤1 用户导入 xls文件 导入程序后检查文件是否存在 我能做到的 第 2 步 我要求用户提供要分析的文档表 xls 的名称 这就是它停止的地方 该程
  • 从 wxPython 事件处理程序中调用函数

    我正在努力寻找一种在 wxPython 事件处理函数中使用函数的方法 假设我有一个按钮 单击该按钮时 它会使用事件处理程序运行一个名为 OnRun 的函数 但是 用户忘记单击 OnRun 按钮之前的 RadionButton 我想弹出一个
  • 从迭代器外部将 StopIteration 发送到 for 循环

    有几种方法可以打破一些嵌套循环 他们是 1 使用中断 继续 for x in xrange 10 for y in xrange 10 print x y if x y gt 50 break else continue only exec
  • Python 2.7 缩进错误[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题是由拼写错误或无法再重现的问题引起的 虽然类似的问题可能是on topic help on topic在这里 这个问题的解决方式不
  • 无需访问 Internet 即可部署 Django 的简单方法?

    我拥有的是使用 Django 开发的 Intranet 站点的开发版本以及放置在 virtualenv 中的一些外部库 它运行良好 我可以在任何具有互联网连接的计算机上使用相同的参数 使用 pip 轻松设置 virtualenv 但是 不幸
  • 使用 MPI 的 Allreduce 对 Python 对象求和

    我正在使用使用 Python 中的字典和计数器构建的稀疏张量数组操作 我想让并行使用这个数组操作成为可能 最重要的是 我最终在每个节点上都有计数器 我想使用 MPI Allreduce 或另一个不错的解决方案 将其添加在一起 例如 使用计数
  • 为boost python编译的.so找不到模块

    我正在尝试将 C 代码包装到 python 中 只需一个类即可导出两个函数 我编译为map so 当我尝试时import map得到像噪音一样的错误 Traceback most recent call last File
  • MoviePY 无法在 Windows 上检测 ImageMagick 二进制文件

    我刚买了一台新笔记本电脑 想要设置MoviePY在那新的Windows 64x Python3 7 0 机器 我对所有内容都进行了三次检查 但是当涉及到我的代码的文本部分时 它向我抛出了这个错误 OSError MoviePy Error
  • 在Python中停止ThreadPool中的进程

    我一直在尝试为控制某些硬件的库编写一个交互式包装器 用于 ipython 有些调用对 IO 的影响很大 因此并行执行任务是有意义的 使用 ThreadPool 几乎 效果很好 from multiprocessing pool import
  • Biopython 可以执行 Seq.find() 来解释歧义代码吗

    我希望能够在 Seq 对象中搜索考虑歧义代码的子序列 Seq 对象 例如 以下内容应该是正确的 from Bio Seq import Seq from Bio Alphabet IUPAC import IUPACAmbiguousDNA

随机推荐

  • rsync同步脚本

    bin bash export LANG C date date Y m d H M red echo e 033 0 31m blue echo e 033 0 36m white echo e 033 37m rsync usr bin
  • 解决克隆虚拟机无法上网问题

    通过VMware克隆出来一台linux的虚拟机 但是发现没有办法上网 然后上网查 原来是在linux中有唯一标识网卡的UUID 我们是通过克隆过来的 那么他们的UUID MAC地址和IP地址都相同了 所以导致克隆出来的机子没有办法上网 下面
  • access对比数据_数据分析师有理由爱Sqlserver之四-七大数据库测评Sqlserver胜出

    虽说各家数据库产品大同小易 学会一家 其他家都可以很快上手 但和编程语言的选择一样 人的精力有限下 只能深入研究一家的产品 故在学习之前 认真去评估应该选择哪一家数据库学习 这样的时间也很值得 总比学到一半不断地更换不同产品所浪费的时间好得
  • 一类学习(OCSVM)

    20201102 0 引言 我记得我第一次接触一类学习的时候 是在一本讲解异常流量的书上 大概18年的时候 当时有一个需求 就是所处的场景下 只能拥有一类数据 而其他类的数据 要不获取不到 要不获取了也不具备什么代表性 总体上就是这么一个场
  • VTK和Cmake的安装并运行一个vtk的案例

    VTK的安装并运行一个项目 1 CMAKE安装 要安装VTK的话首先需要安装CMAKE CMAKE的官网 https cmake org download 进入Cmake下载网页 可以看到很多版本 我们选择最新的 在文件列表中 我们选择最便
  • Java之类与对象

    作者简介 zoro 1 目前大一 正在学习Java 数据结构等 作者主页 zoro 1的主页 欢迎大家点赞 收藏 加关注哦 目录 初始面向对象 什么是面向对象 面向对象和面向过程区别 类的定义和使用 什么是类 类的定义 类的实例化 什么是类
  • 关于绘图的卡顿解决方案

    在Android应用中 cocos的渲染和js的逻辑是在gl线程中进行的 而android本身的UI更新是在app的UI线程进行的 所以如果我们在js中调用的Java方法有任何刷新UI的操作 都需要在UI线程进行 如果画板的控件继承于Vie
  • Redis6+PHP:实现根据经纬度计算出附近门店距离

    一 开始介绍 Redis GEO 1 Redis GEO 主要用于存储地理位置信息 并对存储的信息进行操作 该功能在 Redis 3 2 版本新增 Redis GEO 操作方法 geoadd 添加地理位置的坐标 geopos 获取地理位置的
  • CloudCompare——泊松重建

    目录 1 简介 2 利用输出密度 3 相关代码 博客长期更新 本文最近更新时间为 2023年8月10日 1 简介 算法原理见 泊松重建算法原理介绍 qPoissonRecon是 Poisson Surface Reconstruction
  • 单片机原理概念

    参考 单片机原理概念 作者 爱学习的小王呀 发布时间 2020 11 27 08 58 08 网址 https blog csdn net hongliwong article details 110219821 spm 1001 2014
  • SCL教程之如何使用SCL创建简单控制程序

    最近有不少朋友都对SCL编程感兴趣 网上的相关资料又较少今天我就为大家简单介绍一下如何使用SCL创建简单程序 1 首先我要先说明一下使用STEP7 或 PCS7都可以进行SCL编程 其编程方式与TIA的编程方式类似 但是语法稍有不同 今天我
  • vue+a-form 动态表格,动态增加动态删除

    思路借鉴了一位大佬的文章 原文地址如下 版权声明 本文为qq 42203909原创文章 遵循 CC 4 0 BY SA 版权协议 转载请附上原文出处链接和本声明 本文链接 antd实现动态增减表单项 支持赋初始值 首先是封装子组件 自己起个
  • ios 启动执行初始化

    UIViewController 分为下面三种情形创建 依次调用的方法 顺序如下 1 StoryBoard 1 initWithCoder 2 awakeFromNib 3 loadView 4 viewDidLoad 2 Xib 1 in
  • 模型保存的两种类型torch.save

    torch save model model face pt 一个常见的PyTorch函数是使用 pt文件扩展名来保存张量 model是我训练后的模型 后面的参数 model face pt 就是我模型保存的类名 存放同一文件夹下 当然可以
  • 数据库系统教程(第二版何玉洁)课后数据库上机实验答案

    附录C 上机实验 C 1 第4章上机实验 陈宇超 仅供参考 下列实验均使用SQL Server 的SSMS工具实现 1 用图形化方法创建符合如下条件的数据库 创建数据库的方法可参见本书附录A l 数据库名为 学生数据库 l 主要数据文件的逻
  • 常用的java虚拟机参数_Java虚拟机参数分析 - PerfMa

    参数查询 支持查询一到多个 JVM 参数 向用户展示每个 JVM 参数的详细信息 包括含义 用法等 并可查看社区对此参数的相关讨论 支持两种输入格式 直接输入一个或多个参数名 示例 Xms Xmx Xmn Xss MaxPermSize M
  • 超详细的OpenCV入门教程,12小时带你吃透OpenCV。

    OpenCV简介 OpenCV是一个基于Apache2 0许可 开源 发行的跨平台计算机视觉和机器学习软件库 可以运行在linux Windows Android和MAC OS操作系统上 1 它轻量级而且高效 由一系列 C 函数和少量 C
  • vue中scoped与/deep/深度选择器原理总结

    最近在写一个vue element ui项目 使用element ui某些组件修改样式时 老是需要加上 deep 深度选择器 以前只是知道这样用 但是还不清楚他的原理 这次就来好好的梳理一下 1 首先我们需要知道css中的属性选择器 w3c
  • Introduction to Causal Inference:Chapter 1因果推断概论

    本文是学习brady neal于2020年开设的因果推断课程Introduction to Causal Inference的记录 概述 本chapter主要分四个部分 辛普森悖论 为什么相关性不是因果关系 什么展示了因果关系 在观测性研究
  • 七、PyQt5实现Python界面设计_滑块控件(QSlider)与计数器控件(QSpinBox)

    目录 一 QSlider滑块控件 1 简介 2 常用函数 3 代码演示 二 QSpinBox计数器控件 1 简介 2 常用函数 3 代码演示 一 QSlider滑块控件 1 简介 1 水平或者垂直的滑动控件 一般用来设置数字 快速滑动来调整