python GUI库图形界面开发之PyQt5滚动条控件QScrollBar详细使用方法与实例

 更新时间:2020年03月06日 08:47:36   作者:jia666666  
这篇文章主要介绍了python GUI库图形界面开发之PyQt5滚动条控件QScrollBar详细使用方法与实例,需要的朋友可以参考下

PyQt5滚动条控件QScrollBar简介

可以看到,前面介绍的几个窗口控件的共同点是新建一些窗口来装载更多的控件,而QScrollBar提供了另一种思路:这个控件提供水平的或垂直的滚动条,这样可以扩大当前窗口的有效装载面积,从而装载更多的控件

QScrollBar类中常用的信号

信号 含义
valueChanged 当滑动条的值改变发射此信号
sliderMoved 当用户拖动滑块时发射此信号

QScrollBar的使用实例

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

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

  def initUI(self):
    #水平布局
    HBox=QHBoxLayout()

    #创建标签以及显示文本,设置字体类型和字号大小
    self.l1=QLabel('拖动滑块改变颜色')
    self.l1.setFont(QFont('Arial',16))

    #添加到布局中
    HBox.addWidget(self.l1)

    #创建滑块,设置最大值,滑动信号关联到槽函数
    self.s1=QScrollBar()
    self.s1.setMaximum(255)
    self.s1.sliderMoved.connect(self.sliderval)

    self.s2=QScrollBar()
    self.s2.setMaximum(255)
    self.s2.sliderMoved.connect(self.sliderval)

    self.s3=QScrollBar()
    self.s3.setMaximum(255)
    self.s3.sliderMoved.connect(self.sliderval)

    #添加部件到布局中
    HBox.addWidget(self.s1)
    HBox.addWidget(self.s2)
    HBox.addWidget(self.s3)

    #初始化位置以及初始窗口大小,设置整体布局方式和标题
    self.setGeometry(300,300,300,200)
    self.setWindowTitle('QScrollBar例子')
    self.setLayout(HBox)

  def sliderval(self):
    #输出当前三个滑块位置所代表的值
    print(self.s1.value(),self.s2.value(),self.s3.value())

    #实例化调色板对象,设置颜色为三个滑块的值
    palette=QPalette()
    c=QColor(self.s1.value(),self.s2.value(),self.s3.value())
    palette.setColor(QPalette.Foreground,c)

    #设置标签的调色板,加载属性
    self.l1.setPalette(palette)
if __name__ == '__main__':
  app=QApplication(sys.argv)
  demo=Example()
  demo.show()
  sys.exit(app.exec_())

运行效果图如下

代码解析

在这个例子中,设置了三个滑动条来控制标签中显示的文字的字体颜色的RGB值

当滑块滑动时,将sliderMoved信号与槽函数连接起来

self.s3.sliderMoved.connect(self.sliderval)

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

相关文章

  • Python Pandas处理csv文件常用示例

    Python Pandas处理csv文件常用示例

    Pandas是一个非常强大的数据操作python包,支持各种数据格式,包括CSV文件,本文就来介绍一下Python Pandas处理csv文件常用示例,感兴趣的可以了解一下
    2023-12-12
  • Python Web程序部署到Ubuntu服务器上的方法

    Python Web程序部署到Ubuntu服务器上的方法

    在本文记录了我在Ubuntu中部署Flask Web站点的过程, 其中包括用户创建、代码获取、Python3环境的安装、虚拟环境设置、uWSGI启动程序设置,并将Nginx作为前端反向代理,需要的朋友参考下吧
    2018-02-02
  • python从PDF中提取数据的示例

    python从PDF中提取数据的示例

    这篇文章主要介绍了python从PDF中提取数据的示例,帮助大家提高办公效率,感兴趣的朋友可以了解下
    2020-10-10
  • 如何在Python对Excel进行读取

    如何在Python对Excel进行读取

    这篇文章主要介绍了如何在Python对Excel进行读取,文中讲解非常详细,示例代码帮助大家参考学习,感兴趣的朋友可以了解下
    2020-06-06
  • python神经网络学习利用PyTorch进行回归运算

    python神经网络学习利用PyTorch进行回归运算

    这篇文章主要为大家介绍了python神经网络学习利用PyTorch进行回归运算的实现代码,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • np.random.seed() 的使用详解

    np.random.seed() 的使用详解

    这篇文章主要介绍了np.random.seed() 的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • Python 工具类实现大文件断点续传功能详解

    Python 工具类实现大文件断点续传功能详解

    用python进行大文件下载的时候,一旦出现网络波动问题,导致文件下载到一半。如果将下载不完全的文件删掉,那么又需要从头开始,如果连续网络波动,是不是要头秃了。本文提供断点续传下载工具方法,希望可以帮助到你
    2021-10-10
  • Python实现壁纸下载与轮换

    Python实现壁纸下载与轮换

    本人对于壁纸一直偏佛系,不爱特意去找一堆壁纸。因此用Python简单地搞了一个自动下载壁纸,定时随机轮换的功能来自娱自乐,顺便分享给大家。
    2020-10-10
  • 基于Python实现开心消消乐小游戏的示例代码

    基于Python实现开心消消乐小游戏的示例代码

    这篇文章主要是带着大家自制一款开心消消乐,还原度超高哦~还在等什么动动手就能拥有属于自己的”消消乐“小游戏呢,赶快学起来吧
    2022-05-05
  • 聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明

    聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明

    这篇文章主要介绍了聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03

最新评论