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自动化测试Eclipse+Pydev 搭建开发环境
Aug 15 Python
Python书单 不将就
Jul 11 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
Mar 15 Python
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
Apr 12 Python
Django Web开发中django-debug-toolbar的配置以及使用
May 06 Python
Python高级用法总结
May 26 Python
使用python脚本实现查询火车票工具
Jul 19 Python
Python3批量移动指定文件到指定文件夹方法示例
Sep 02 Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
Feb 11 Python
为什么说python更适合树莓派编程
Jul 20 Python
8种常用的Python工具
Aug 05 Python
Python 线程池模块之多线程操作代码
May 20 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和C#的yield迭代器实现方法对比分析
2019/07/17 PHP
HR vs CL BO3 第二场 2.13
2021/03/10 DOTA
JavaScript 异步调用框架 (Part 1 - 问题 &amp; 场景)
2009/08/03 Javascript
Javascript创建Silverlight Plugin以及自定义nonSilverlight和lowSilverlight样式
2010/06/28 Javascript
Select标签下拉列表二级联动级联实例代码
2014/02/07 Javascript
网站接入QQ登录的两种方法
2014/07/22 Javascript
AngularJS入门教程之学习环境搭建
2014/12/06 Javascript
node.js集成百度UE编辑器
2015/02/05 Javascript
基于jQuery实现Ajax验证用户名是否存在实例
2016/03/30 Javascript
关于jquery中动态增加select,事件无效的快速解决方法
2016/08/29 Javascript
实例解析jQuery工具函数
2016/12/01 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
2017/01/19 Javascript
JavaScript 数据类型详解
2017/03/13 Javascript
简单实现JavaScript弹幕效果
2020/08/27 Javascript
利用Vue.js实现求职在线之职位查询功能
2017/07/03 Javascript
基于Vue实现拖拽效果
2018/04/27 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
Python map和reduce函数用法示例
2015/02/26 Python
深入学习Python中的装饰器使用
2016/06/20 Python
Django代码性能优化与Pycharm Profile使用详解
2018/08/26 Python
Python操作mongodb数据库的方法详解
2018/12/08 Python
用python做游戏的细节详解
2019/06/25 Python
Python Pandas数据结构简单介绍
2019/07/03 Python
Django中间件基础用法详解
2019/07/18 Python
50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)
2019/11/20 Python
Django基于客户端下载文件实现方法
2020/04/21 Python
Python如何读写字节数据
2020/08/05 Python
简约控的天堂:The Undone
2016/12/21 全球购物
JACK & JONES荷兰官网:男士服装和鞋子
2021/03/07 全球购物
Aosom西班牙:家具在线商店
2020/06/11 全球购物
Python里面如何拷贝一个对象
2014/02/17 面试题
财务管理专业毕业生求职信范文
2013/09/21 职场文书
项目投资意向书
2014/04/01 职场文书
numpy数据类型dtype转换实现
2021/04/24 Python
在SQL Server中使用 Try Catch 处理异常的示例详解
2022/07/15 SQL Server
Win10本地连接不见了怎么恢复? win10系统电脑本地连接不见了解决方法
2023/01/09 数码科技