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 相关文章推荐
linux系统使用python监测系统负载脚本分享
Jan 15 Python
用map函数来完成Python并行任务的简单示例
Apr 02 Python
Python生成器(Generator)详解
Apr 13 Python
Python实现对PPT文件进行截图操作的方法
Apr 28 Python
django1.8使用表单上传文件的实现方法
Nov 04 Python
python实现批量修改文件名代码
Sep 10 Python
Python 给屏幕打印信息加上颜色的实现方法
Apr 24 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
Feb 27 Python
如何基于python3和Vue实现AES数据加密
Mar 27 Python
使用PyQt5实现图片查看器的示例代码
Apr 21 Python
Django生成数据库及添加用户报错解决方案
Oct 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设计模式之数据对象映射模式
2016/03/03 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
PHP htmlspecialchars()函数用法与实例讲解
2019/03/08 PHP
JAVASCRIPT代码编写俄罗斯方块网页版
2015/11/26 Javascript
基于javascript实现九九乘法表
2016/03/27 Javascript
javascript验证内容为数字以及长度为10的简单实例
2016/08/20 Javascript
深入理解AngularJS中的ng-bind-html指令和$sce服务
2016/09/08 Javascript
Javascript 事件冒泡机制详细介绍
2016/10/10 Javascript
JS中的phototype详解
2017/02/04 Javascript
利用JQuery操作iframe父页面、子页面的元素和方法汇总
2017/09/10 jQuery
微信小程序页面传多个参数跳转页面的实现方法
2019/05/17 Javascript
p5.js码绘“跳动的小正方形”的实现代码
2019/10/22 Javascript
vue双向绑定数据限制长度的方法
2019/11/04 Javascript
Vue.js 中制作自定义选择组件的代码附演示demo
2020/02/28 Javascript
pymongo为mongodb数据库添加索引的方法
2015/05/11 Python
详解pyqt5 动画在QThread线程中无法运行问题
2018/05/05 Python
redis之django-redis的简单缓存使用
2018/06/07 Python
Python测试网络连通性示例【基于ping】
2018/08/03 Python
python 实现语音聊天机器人的示例代码
2018/12/02 Python
使用python itchat包爬取微信好友头像形成矩形头像集的方法
2019/02/21 Python
Django 开发环境配置过程详解
2019/07/18 Python
用Python实现校园通知更新提醒功能
2019/11/23 Python
Python测试Kafka集群(pykafka)实例
2019/12/23 Python
Django DRF路由与扩展功能的实现
2020/06/03 Python
python 三种方法提取pdf中的图片
2021/02/07 Python
NBA欧洲商店(英国):NBA Europe Store UK
2018/07/27 全球购物
小学教研工作制度
2014/01/15 职场文书
小学毕业演讲稿
2014/04/25 职场文书
网站出售协议书范文
2014/10/10 职场文书
2014年学生会主席工作总结
2014/11/07 职场文书
拾金不昧感谢信
2015/01/21 职场文书
部门经理迟到检讨书
2015/02/16 职场文书
关于分班的感言
2015/08/04 职场文书
采购员工作总结范文
2015/08/12 职场文书
html+css实现赛博朋克风格按钮
2021/05/26 HTML / CSS
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
2021/06/09 Python