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


Posted in Python onMarch 06, 2020

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_())

运行效果图如下

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

代码解析

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

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

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

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

Python 相关文章推荐
python 字典(dict)遍历的四种方法性能测试报告
Jun 25 Python
Python库urllib与urllib2主要区别分析
Jul 13 Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 Python
Python三元运算实现方法
Jan 12 Python
Python遍历目录的4种方法实例介绍
Apr 13 Python
利用Python学习RabbitMQ消息队列
Nov 30 Python
PyCharm代码整体缩进,反向缩进的方法
Jun 25 Python
python学生信息管理系统(初级版)
Oct 17 Python
pandas实现excel中的数据透视表和Vlookup函数功能代码
Feb 14 Python
Python之关于类变量的两种赋值区别详解
Mar 12 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
Jan 08 Python
Pytorch中的学习率衰减及其用法详解
Jun 05 Python
Python object类中的特殊方法代码讲解
Mar 06 #Python
python+Selenium自动化测试——输入,点击操作
Mar 06 #Python
使用 Python ssh 远程登陆服务器的最佳方案
Mar 06 #Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
Mar 06 #Python
python解析xml文件方式(解析、更新、写入)
Mar 05 #Python
如何使用pandas读取txt文件中指定的列(有无标题)
Mar 05 #Python
python批量替换文件名中的共同字符实例
Mar 05 #Python
You might like
打造计数器DIY三步曲(中)
2006/10/09 PHP
php专用数组排序类ArraySortUtil用法实例
2015/04/03 PHP
微信公众号开发之语音消息识别php代码
2016/08/08 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
PHP实现单例模式建立数据库连接的方法分析
2020/02/11 PHP
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
jquery实现点击查看更多内容控制段落文字展开折叠效果
2015/08/06 Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
2015/08/18 Javascript
JavaScript实现页面跳转的几种常用方式
2015/11/28 Javascript
整理Javascript基础入门学习笔记
2015/11/29 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
2016/04/12 Javascript
jQuery使用经验小技巧(推荐)
2016/05/31 Javascript
巧用jQuery选择器提高写表单效率的方法
2016/08/19 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
微信小程序教程系列之新建页面(4)
2017/04/17 Javascript
ES6关于Promise的用法详解
2018/05/07 Javascript
Vue中Axios从远程/后台读取数据
2019/01/21 Javascript
vue列表单项展开收缩功能之this.$refs的详解
2019/05/05 Javascript
通过vue写一个瀑布流插件代码实例
2019/09/07 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
python数据结构树和二叉树简介
2014/04/29 Python
python pandas修改列属性的方法详解
2018/06/09 Python
python 成功引入包但无法正常调用的解决
2020/03/09 Python
Python基于jieba, wordcloud库生成中文词云
2020/05/13 Python
python输出国际象棋棋盘的实例分享
2020/11/26 Python
欧舒丹澳洲版:L’OCCITANE
2017/07/17 全球购物
GAP阿联酋官网:GAP UAE
2017/11/30 全球购物
计算机大学生的自我评价
2013/10/15 职场文书
法定代表人授权委托书范本
2014/10/07 职场文书
小学优秀教师事迹材料
2014/12/16 职场文书
2015年世界无车日活动总结
2015/03/23 职场文书
Django使用redis配置缓存的方法
2021/06/01 Redis
python 爬取吉首大学网站成绩单
2021/06/02 Python