PyQt5每天必学之滑块控件QSlider


Posted in Python onApril 20, 2018

QSlider 是一个具有可来回拉动手柄的控件。有时使用滑块比输入数字或使用旋转框更方便。

在我们的例子中,我们将创建一个滑块和一个标签。标签显示图像。滑块将控制标签显示的图像。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
PyQt5 教程

这个例子显示了一个QSlider控件的使用方法。

作者:我的世界你曾经来过
博客:http://blog.csdn.net/weiaitaowang
最后编辑:2016年8月3日
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QSlider
from PyQt5.QtGui import QPixmap
from PyQt5.QtCore import Qt

class Example(QWidget):

 def __init__(self):
  super().__init__()

  self.initUI()

 def initUI(self):

  sld = QSlider(Qt.Horizontal, self)
  sld.setFocusPolicy(Qt.NoFocus)
  sld.setGeometry(30, 40, 100, 30)
  sld.valueChanged[int].connect(self.changeValue)

  self.label = QLabel(self)
  self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\mute.png'))
  self.label.setGeometry(160, 30, 80, 50)

  self.setGeometry(300, 300, 280, 170)
  self.setWindowTitle('滑块控件')  
  self.show()

 def changeValue(self, value):

  if value == 0:
   self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\mute.png'))
  elif value > 0 and value <= 30:
   self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\min.png'))
  elif value > 30 and value < 80:
   self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\med.png'))
  else:
   self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\max.png'))

if __name__ == '__main__':

 app = QApplication(sys.argv)
 ex = Example()
 sys.exit(app.exec_())

在我们的例子中,我们模拟音量控制。通过拖动滑块的手柄,我们改变标签上的图像。

sld = QSlider(Qt.Horizontal, self)

创建一个水平滑块 QSlider

self.label = QLabel(self)
self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\mute.png'))

创建一个标签 QLabel 控件并设置要显示的初始图像

sld.valueChanged[int].connect(self.changeValue)

将滑块的 valueChanged 信号连接到 changeValue() 方法(槽)

if value == 0:
 self.label.setPixmap(QPixmap('F:\Python\PyQt5\Widgets\images\mute.png'))

我们根据滑块的值设置标签上的图像。在上面的代码中,如果滑块等于零标签的图像设置为mute.png。

程序执行后

PyQt5每天必学之滑块控件QSliderPyQt5每天必学之滑块控件QSlider

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python采用getopt解析命令行输入参数实例
Sep 30 Python
Python Nose框架编写测试用例方法
Oct 26 Python
浅谈用VSCode写python的正确姿势
Dec 16 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
Jan 15 Python
python实现读Excel写入.txt的方法
Apr 29 Python
python实现顺时针打印矩阵
Mar 02 Python
django 捕获异常和日志系统过程详解
Jul 18 Python
Django项目后台不挂断运行的方法
Aug 31 Python
浅谈pymysql查询语句中带有in时传递参数的问题
Jun 05 Python
Python利用Pillow(PIL)库实现验证码图片的全过程
Oct 04 Python
Python 转移文件至云对象存储的方法
Feb 07 Python
python opencv实现图像配准与比较
Feb 09 Python
PyQt4实现下拉菜单可供选择并打印出来
Apr 20 #Python
PyQt5每天必学之组合框
Apr 20 #Python
python 时间信息“2018-02-04 18:23:35“ 解析成字典形式的结果代码详解
Apr 19 #Python
Pyqt实现无边框窗口拖动以及窗口大小改变
Apr 19 #Python
Python利用pandas计算多个CSV文件数据值的实例
Apr 19 #Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
Apr 19 #Python
利用numpy和pandas处理csv文件中的时间方法
Apr 19 #Python
You might like
php对称加密算法示例
2014/05/07 PHP
Mootools 1.2教程(2) DOM选择器
2009/09/14 Javascript
javascript与CSS复习(三)
2010/06/29 Javascript
jQuery在vs2008及js文件中的无智能提示的解决方法
2010/12/30 Javascript
CodeMirror2 IE7/IE8 下面未知运行时错误的解决方法
2012/03/29 Javascript
JQuery中根据属性或属性值获得元素(6种情况获取方法)
2013/01/17 Javascript
常见表单重复提交问题整理及解决方法
2013/11/13 Javascript
浅析JavaScript中的类型和对象
2013/11/29 Javascript
浅谈JS日期(Date)处理函数
2014/12/07 Javascript
原生js实现密码输入框值的显示隐藏
2017/07/17 Javascript
浅谈vue-router 路由传参的方法
2017/12/27 Javascript
解决easyui日期时间框ie的兼容的问题
2018/03/01 Javascript
javascript标准库(js的标准内置对象)总结
2018/05/26 Javascript
React+Redux实现简单的待办事项列表ToDoList
2019/09/29 Javascript
Antd的Table组件嵌套Table以及选择框联动操作
2020/10/24 Javascript
python网页请求urllib2模块简单封装代码
2014/02/07 Python
Python实现随机漫步功能
2018/07/09 Python
pycharm中成功运行图片的配置教程
2018/10/28 Python
python 产生token及token验证的方法
2018/12/26 Python
Pandas中resample方法详解
2019/07/02 Python
Python进度条的制作代码实例
2019/08/31 Python
python实现的读取网页并分词功能示例
2019/10/29 Python
python通过移动端访问查看电脑界面
2020/01/06 Python
使用TensorFlow搭建一个全连接神经网络教程
2020/02/06 Python
Python3交互式shell ipython3安装及使用详解
2020/07/11 Python
英国奢侈皮具品牌:Aspinal of London
2018/09/02 全球购物
西部世纪面试题
2014/12/05 面试题
2015年元旦文艺汇演主持词
2014/03/26 职场文书
领导干部遵守党的政治纪律情况思想汇报
2014/09/14 职场文书
2014年残联工作总结
2014/11/21 职场文书
中国合伙人观后感
2015/06/02 职场文书
女性励志书籍推荐
2019/08/19 职场文书
熟背这些句子,让您的英语口语突飞猛进(135句)
2019/09/06 职场文书
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
python中super()函数的理解与基本使用
2021/08/30 Python
MySQL中varchar和char类型的区别
2021/11/17 MySQL