今天学习一种全新的输入控件——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. 接入集团auth流程

    前言 一直对集团的auth系统很感兴趣,所以这次记录下接入集团auth的流程.如果后期有时间,会补充具体的auth实现细节. 正文 一.实现思想 1. 实现思想 明确几个名词:接入方,管理方.接入方指 ...

  2. 【转】UNITY中相机空间,投影空间的正向问题

    原文链接1:https://www.cnblogs.com/wantnon/p/4570188.html 原文链接2:https://www.cnblogs.com/hefee/p/3820610.h ...

  3. leetcode-easy-array-66 .plus one

    mycode 主要在计算商和余数的时候一定要用还没更新的商和余数哦 class Solution(object): def plusOne(self, digits): ""&qu ...

  4. leetcode 107.Binary Tree Level Order Traversal II 二叉树的层次遍历 II

    相似题目: 102 103 107 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode ...

  5. 自建 CA 中心并签发 CA 证书

    目录 文章目录 目录 CA 认证原理浅析 基本概念 PKI CA 认证中心(证书签发) X.509 标准 证书 证书的签发过程 自建 CA 签发证书并认证 HTTPS 网站的过程 使用 OpenSSL ...

  6. springboot 使用外置tomcat启动

    pom.xml  如下 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...

  7. 如何复制CSDN上他人的博客文章到自己博客下

    原作者:hello_world!(CSDN) 原文地址:https://jingyan.baidu.com/article/0964eca24e159c8285f53618.html</a> ...

  8. 【Linux开发】【Qt开发】配置tslibs触摸屏库环境设置调试对应的设备挂载点

    [Linux开发][Qt开发]配置tslibs触摸屏库环境设置调试对应的设备挂载点 标签(空格分隔): [Linux开发] [Qt开发] 比如: cat /dev/input/mice cat /de ...

  9. 记:第一次更新服务器CUDA和GPU驱动

    因有需求需要改动centos7中的CUDA(更新到10)和GUP 的driver(更新到410)的版本. 事先需要查看原版本的信息,使用nvidia-smi可以查看driver的版本信息(最新的也显示 ...

  10. [Git] 025 标签命令

    0. 前言 小时候看<剑花-烟雨-江南>,惊讶于那个多重身份的"小侯爷" 后来发现,现实中拥有比小侯爷更多身份的人多如牛毛 其实,在 "Git" 中 ...