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

一.描述:

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

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

二.功能作用

  1.数值范围

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

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

  2.当前数值

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

  3.步长

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

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

  4.是否追踪

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

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

  5.滑块位置

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

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

  6.倒立外观

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

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

  7.操作反转

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

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

  8.滑块方向

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

  9.是否按下

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

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

三.信号

  1. QAbstractSlider.valueChanged(self, value: int)
  2. QAbstractSlider.sliderPressed(self)
  3. QAbstractSlider.sliderMoved(self, position: int)
  4. QAbstractSlider.sliderReleased(self)
  5. QAbstractSlider.actionTriggered(self, action: int)
  6. QAbstractSlider.rangeChanged(self, min: int, max: int)

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

  1. QAbstractSlider.SliderNoAction
  2. QAbstractSlider.SliderSingleStepAdd #
  3. QAbstractSlider.SliderSingleStepSub #
  4. QAbstractSlider.SliderPageStepAdd #
  5. QAbstractSlider.SliderPageStepSub #
  6. QAbstractSlider.SliderToMinimum #
  7. QAbstractSlider.SliderToMaximum #
  8. 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. springboot+mybatis+SpringSecurity 实现用户角色数据库管理(一)

    本文使用springboot+mybatis+SpringSecurity 实现用户权限数据库管理 实现用户和角色用数据库存储,而资源(url)和权限的对应采用硬编码配置. 也就是角色可以访问的权限通 ...

  2. Sensor在内核中的驱动框架【转】

    本文转载自:http://blog.csdn.net/armfpga123/article/details/52840370 内核中对sensor的抽象:drivers/sensors/sensors ...

  3. JAVA中对null进行强制类型转换(null可以强转为任意对象,并执行对象的静态方法)

    今天很好奇,对null进行强转会不会抛错.做了如下测试得到的结果是, 如果把null强转给对象,是不会抛异常的,本身对象是可以为null的. 但是如果是基本类型,比如 int i = (Integer ...

  4. Python Module_openpyxl_处理Excel表格

    目录 目录 前言 软件系统 Install openpyxl module Sample code load_workbook加载Excel文件 wbObjectget_sheet_names 获取E ...

  5. keras recall

    # accuracy, fmeasure, precision,recall def mcor(y_true, y_pred): y_pred_pos = K.round(K.clip(y_pred, ...

  6. java主方法组成分析

    public static void main(String args[]) public :是一种访问权限,主方法是一切的开始点,开始点一定是公共的 static :表示此方法可由类直接调用 voi ...

  7. 关于android工具链

    1 android sdk platform tools 同android platform交互的工具,包括adb.fastboot和systrace. 2 sdk build tools 用于bui ...

  8. Quartz-第四篇 常规quartz的使用

    1.目录结构 2.主要文件 1>引入的jar包,quartz-2.2.2解压后lib下所有的jar包 2>quartz.properties org.quartz.threadPool.t ...

  9. 《剑指offer》面试题22 栈的压入、弹出序列 Java版

    (输入两个整数序列,第一个序列是一串数字的压入顺序,判断第二个序列是否是该栈数字的弹出顺序.) 我的方法:压入序列是给定的,每一次弹出操作形成一个弹出序列的值,我们从前往后遍历弹出序列,每一次访问弹出 ...

  10. Python设置

    1.中断程序执行 在命令行中中断正在执行的程序,ctrl c或者ctrl break 2.SyntaxError: Non-ASCII character 需要在最开始的地方加上 : #-*-codi ...