今天学习一种全新的输入控件——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. node.js npm 操作 模块化开发 cnpm镜像安装

    模块(包) 传统引入 js 的缺点 整个网页,我们写了一个 js 文件,所有的特效都在里面 耦合度太高,代码之间关联性太强,不便于后期维护 变量容易 全局污染 如果将 复杂的 js 文件,拆成多个功能 ...

  2. 转 HTTP请求报文格式 GET和POST

    https://blog.csdn.net/h517604180/article/details/79802914 最近在做安卓客户端图片上传插件功能,供后台调用.其中涉及到了拼接HTTP请求报文,所 ...

  3. 四、IDEA创建SpringBoot项目

    1.从官网下载之后直接导入IDEA: 下载完成解压之后如下图: IDEA导入该项目: 之后一路next即可 导入成功之后你可能会发现左下角一直有个进度条在进行,傻傻的同学可能以为是在下载jar包,下个 ...

  4. 用Vue来实现音乐播放器(二十一):歌手详情数据抓取

    第一步:在api文件夹下的singer.js中抛出getSingerDetail方法 第二步:在singer-detail.vue组件中引入api文件夹下的singer.js和config.js 第三 ...

  5. handsonetable+vue 表格在线编辑

    <template> <div> <div id="example-container" class="wrapper"> ...

  6. robotframework json解析

    用robotframework做接口测试,现在用的最多的就是json格式的数据,刚开始接触会感觉一脸懵逼,不知道怎么去取里面的值.在这里简单介绍一下,其实本身json取值不会太难,只要理解层次关系,一 ...

  7. 系统分析与设计HW1

    软件工程的定义 1993年,电气电子工程师学会(IEEE)给出了一个定义:"将系统化的.规范的.可度量的方法用于软件的开发.运行和维护的过程,即将工程化应用于软件开发中". 阅读经 ...

  8. div动画旋转效果

    animation: spin 10s linear infinite;

  9. 【MM系列】SAP MB5B中FI凭证摘要是激活的/结果可能不正确 的错误

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MB5B中FI凭证摘要是激活 ...

  10. 【Qt开发】事件循环与线程 二

    事件循环与线程 二 Qt 线程类 Qt对线程的支持已经有很多年了(发布于2000年九月22日的Qt2.2引入了QThread类),Qt 4.0版本的release则对其所有所支持平台默认地是对多线程支 ...