今天学习一种全新的输入控件——QAbstractSlider()滑块控件的基础控件。

一.描述:

QAbstractSlider()是QWidget()的子类,提供了一个范围内的整数值。它是QSlider,QScrollBar和QDial的父类(抽象类),将多种滑动控件的共性抽象了出来。

QAbstractSlider()是个抽象类,使用必须通过子类来实例化。下面的功能演示都有QSlider来实现。

二.功能作用

  1.数值范围

  默认的控件范围是0-9,可以通过设定来改变。

QAbstractSlider.setMaximum(self, a0: int)    #设定最大值
QAbstractSlider.setMinimum(self, a0: int) #设定最小值
QAbstractSlider.maximum() #获取最大值——>int
QAbstractSlider.minimum() #获取最小值——>int

  2.当前数值

QAbstractSlider.setValue(self, a0: int)      #设定当前数值
QAbstractSlider.value() #获取最小值——>int

  3.步长

  步长是通过键盘操作时改变的值。分为单步步长和移页步长,单步是指用上下箭头改变的值(默认值为1),而移页是指用键盘pageup和pagedown操作时的步长(默认值为10)。

QAbstractSlider.setSingleStep(self, a0: int)   #设置单步步长
QAbstractSlider.setPageStep(self, a0: int) #设置移页步长
QAbstractSlider.singleStep() #获取单步步长——>int
QAbstractSlider.pageStep() #获取移页步长——>int

  4.是否追踪

  追踪的设定主要影响到后面信号的发射,如果不追踪的话鼠标松在点击拖拽后松开前时是不会发送信号的,如果追踪的话只要改变了滑块位置就会发送个valuechanged这个信号的。

QAbstractSlider.setTracking(self, enable: bool)  #追踪设置
QAbstractSlider.hasTracking() #获取是否追踪——>bool

  5.滑块位置

QAbstractSlider.setSliderPosition(self, a0: int)   #设定滑块位置
QAbstractSlider.sliderPosition() #获取滑块位置——>int

滑块位置的设定和是否追踪关联能影响到通过代码是否能够发送valuechanged信号

  6.倒立外观

  默认情况控件都是大值在上面小值在下面,启用了倒立外观就把大值放在了下面。

QAbstractSlider.setInvertedAppearance(self, a0: bool)#设置倒立外观
QAbstractSlider.invertedAppearance() #获取是否开启倒立——>bool

  7.操作反转

  默认情况控件按键盘上键或pageup为加数值,下或pagedown为减数值。启动了操作反转可以用上来减数值。

QAbstractSlider.setInvertedControls(self, a0: bool)  #设置操作反转
QAbstractSlider.setInvertedControls() #获取是否操作反转——>bool

  8.滑块方向

QAbstractSlider.setOrientation(Qt.Horizontal)         #设置方向
QAbstractSlider.orientation() #获取方向——>int
Qt.Horizontal #横向,默认左小右大,返回值1
Qt.Vertical #纵向 返回值2

  9.是否按下

  这个功能用的少,主要是获取值。其实在不追踪的时候valuechanged的状态判定就是基于是否被按下的。如果返回值为False则发送信号。

QAbstractSlider.setSliderDown(self, a0: bool)        #设置被按下
QAbstractSlider.isSliderDown() #获取是否被按下——>bool

三.信号

QAbstractSlider.valueChanged(self, value: int)
QAbstractSlider.sliderPressed(self)
QAbstractSlider.sliderMoved(self, position: int)
QAbstractSlider.sliderReleased(self)
QAbstractSlider.actionTriggered(self, action: int)
QAbstractSlider.rangeChanged(self, min: int, max: int)

都是字面的意思,没什么好讲的!只有一个actionTriggered要说一下,它对应有下面的枚举状态对应的返回值。

QAbstractSlider.SliderNoAction
QAbstractSlider.SliderSingleStepAdd #
QAbstractSlider.SliderSingleStepSub #
QAbstractSlider.SliderPageStepAdd #
QAbstractSlider.SliderPageStepSub #
QAbstractSlider.SliderToMinimum #
QAbstractSlider.SliderToMaximum #
QAbstractSlider.SliderMove #

但是第5、6个滑动到最大最小我一直没试出来,都是返回的7,就是滑块移动触发。

GUI学习之二十——QAbstractSlider学习总结的更多相关文章

  1. python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码

    python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...

  2. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  3. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  4. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  5. python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法

    python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...

  6. 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧

    目录 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧 25.1 Shell中的色彩处理 25.2 awk基本应用 25.2.1 概念 25.2.2实例演示 25.3 awk ...

  7. 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用

    目录 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用 24.1 expect实现无交互登录 24.1.1 安装和使用expect 24.2 正则表达式的使用 24 ...

  8. 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环

    目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...

  9. 学习笔记:CentOS7学习之二十:shell脚本的基础

    目录 学习笔记:CentOS7学习之二十:shell脚本的基础 20.1 shell 基本语法 20.1.1 什么是shell? 20.1.2 编程语言分类 20.1.3 什么是shell脚本 20. ...

随机推荐

  1. C#调用本地摄像头-AForge库简单使用

    介绍 AForge百度词条: https://baike.baidu.com/item/AForge.NET/114415?fr=aladdin 用途 调用笔记本电脑自带的相机 示例 源码 using ...

  2. VLC2.2.4命令参数

    用法: vlc [选项] [流] ...您可以在命令行中指定多个流.它们将被加入播放列表队列.指定的首个项目将被首先播放. 选项样式: --选项 用于设置程序执行期间的全局选项. -选项 单字母版本的 ...

  3. 下载vuejs,Hello Vue(vscode)

    下载vuejs,Hello Vue(vscode) Hello Vue 下载使用vue.js 动图演示 Vue的基本使用步骤  传送门:https://cn.vuejs.org/v2/guide/in ...

  4. rosbag record and play

    话题录制: 录制所有发布出来的话题,此时默认将话题保存在一个以当时时间戳命名的文件夹中:   $ rosbag record -a1 录制指定话题:   $ rosbag record /topic1 ...

  5. 中国MOOC_零基础学Java语言_第4周 循环控制_1素数和

    第4周编程题 查看帮助 返回   第4周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截 ...

  6. mysql数据库delete数据时不支持表别名!!!

    mysql数据库delete数据时不支持表别名!!! mysql delete时候 提示语法错误!如下sql: 去掉 表别名的时候: 正确的写法例如: DELETE FROM COMMENTS_REP ...

  7. 爬虫二之Requests

    requests 实例引入 import requests response = requests.get('https://www.baidu.com') response.status_code ...

  8. Linux环境部署Node.js

    介绍 先前在阿里云ECS上部署Node.js,碰到不少坑,都是自己不仔细造成的,所以准备再部署一遍,并记录下来.我将我的服务器重置了,这次选择的是CentOS 7.4 64位,上次的是7.2的. 使用 ...

  9. abstract关键字及static关键字

    抽象关键字abstract 抽象类 在类前加上关键字abstract可以将此类变成抽象类.抽象类不允许通过new关键字实例化,但是可一通过其子类向上转型为其创建实例. 抽象类可以有抽象方法,也可以没有 ...

  10. python3—廖雪峰之练习(三)

    列表生成式练习 请修改列表生成式,通过添加if语句保证列表生成式能正确执行: L1 = ['Hello', 'World', 18, 'Apple', None] L2 = [] for x in L ...