一、概述

Designer中的Dial刻度盘输入部件提供一个圆形的刻度表,类似速度表,对应类为QDial类。QDial继承自QAbstractSlider(关于QAbstractSlider的功能请参考《PyQt(Python+Qt)学习随笔:QScrollBar以及QAbstractSlider滚动条部件功能详解》),因此刻度盘与滑动条类似。当wrapping属性值为False(默认设置)时,刻度盘和滑动条之间除了外观外没有真正的区别。它们共享相同的信号、插槽和成员函数。关于滑动条的功能请参考《PyQt(Python+Qt)学习随笔:QSlider滑动条部件功能简介》。

刻度盘的键盘操作相当简单:左键/上键和右键/下键按定义的单步移动指针和改变值,PgUp和PgDn按定义的页面步向上和向下移动指针和调整值,Home键和End键将移动指针到最小值和最大值。

如果使用鼠标滚轮调整刻度盘,则增量值由 wheelScrollLines乘以singleStep和pageStep的较小值确定。

二、QDial拨号盘部件的属性、方法和信号

QDial刻度盘部件的独有属性如下:

  • wrapping属性 :wrapping用于控制刻度盘上的刻度是否前后连接,如果为False,则最小值和最大值中间会有一段空白区域进行分隔,使用光标键调节值时指针只能在最小值和最大值之间移动,到达最大值或最小值时无法再朝对应方向移动。用鼠标拖拽指针可以越过最大值或最小值进行循环移动,但指针不能在空白区域段停留。如果wrapping为True,则指针移动到最大值或最小值时可以继续向对应方向移动,数值则跳转到最小值或最大值
  • notchesVisible属性:notchesVisible用于控制刻度盘上刻度线是否可见,可见时刻度线在表盘上平均分布
  • notchTarget属性:notchTarget用于控制刻度盘上刻度线之间的像素数量,表盘上刻度线的数量与4个属性相关,分别是最小值minimum、最大值maximum、singleStep单步数值以及notchTarget属性值,如果考虑notchTarget的值后表盘上的空间足够,刻度线的数量等于(maximum-minimum+1)/singleStep后四舍五入取整的值(假设为count),如果notchTarget设置过大导致count*notchTarget的值超过整个表盘的周长像素数,则只会绘制部分刻度线

除了构造方法以及上述属性的访问方法外,QDial的其他属性、方法和信号都是从父类派生的,比较重要的包括:

  • 当刻度盘的指针移动时,刻度盘最初会连续发出valueChanged()信号和sliderMoved()信号,可以通过禁用跟踪属性使其发出valueChanged()信号的频率降低,但sliderMoved()信号不受影响
  • 当拖拽指针移动时,按下和释放鼠标按钮时,刻度盘还会发出sliderPressed()和sliderReleased()信号
  • 与滑动条一样,刻度表可以使用QAbstractSlider的setValue()槽方法。

在《第15.35节 PyQt编程实战:结合QDial实现的QStackedWidget堆叠窗口程序例子》介绍了一个QDial的案例,大家可以回过头去看下。

跟老猿学Python、学5G!

PyQt(Python+Qt)学习随笔:QDial刻度盘部件功能简介的更多相关文章

  1. PyQt(Python+Qt)学习随笔:QWidget部件的palette属性以及ColorGroup、colorRole的用途和含义

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 1.palette属性 QWidget部件的palette属性用于控制 ...

  2. PyQt(Python+Qt)学习随笔:利用QWidget部件的palette以及ColorGroup、colorRole局部调整部件的特定范围颜色

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 在<PyQt(Python+Qt)学习随笔:QWidget部件的 ...

  3. PyQt(Python+Qt)学习随笔:Qt Designer中部件的autoFillBackground属性

    autoFillBackground属性可以确认部件背景是否自动填充,如果自动填充,Qt会在调用Paint事件之前填充部件的背景.使用的颜色由部件调色板中的QPalette.window 角色定义(关 ...

  4. PyQt(Python+Qt)学习随笔:Qt Designer中部件的accessibleDescription和accessibleName辅助阅读属性

    accessibleDescription和accessibleName属性都是用于残疾人辅助阅读的,这两个属性都有国际化属性(关于国际化请参考<PyQt(Python+Qt)学习随笔:Qt D ...

  5. PyQt(Python+Qt)学习随笔:Qt Designer中部件的toolTip、toolTipDuration、statusTip、whatsThis属性

    toolTip属性 toolTip属性设置部件的toolTip提示信息,toolTip提示信息在鼠标放到控件上会浮动出一个小框显示提示信息.默认情况下,仅显示活动窗口子部件的toolTip,可以通过在 ...

  6. PyQt(Python+Qt)学习随笔:部件的大小策略sizePolicy的含义

    在Qt Designer中的每个部件,除了设置部件的位置(geometry)之外,还可以指定部件的大小策略sizePolicy.部件的sizePolicy用于说明部件在布局管理中的缩放方式,当部件没有 ...

  7. PyQt(Python+Qt)学习随笔:Qt Designer中QAbstractButton派生按钮部件的shortcut 属性

    shortcut 属性保存与按钮关联的快捷键.可以使用shortcut()和setShortcut(QKeySequence)访问和设置该属性. 关于这个属性官网介绍的不多,经老猿实际验证,它与tex ...

  8. PyQt(Python+Qt)学习随笔:Qt Designer中QAbstractButton派生按钮部件的icon属性和iconSize属性

    icon属性 icon属性保存按钮上展示的图标,图标的缺省大小由图形界面的样式决定,但可以通过 iconSize 属性进行调整. 图标的几种子属性状态的含义与QWidget的windowIcon属性相 ...

  9. PyQt(Python+Qt)学习随笔:Qt Designer中spacer部件的sizeHint属性

    在两种Spacer部件中都有sizeHint属性,在<PyQt(Python+Qt)学习随笔:Qt Designer中部件的三个属性sizeHint缺省尺寸.minimumSizeHint建议最 ...

  10. PyQt(Python+Qt)学习随笔:Qt Designer中窗口对象的windowFilePath属性

    windowFilePath属性仅对窗口对象有效,用于关联一个窗口和对应的文件及路径. 当窗口没有设置标题属性的情况下,则窗口标题展示展示windowFilePath对应的文件名的信息(路径信息不展示 ...

随机推荐

  1. leetcode7:binary-tree-preorder-traversal

    题目描述 求给定的二叉树的前序遍历. 例如: 给定的二叉树为{1,#,2,3}, 1   \    2   / 3 返回:[1,2,3]. 备注:用递归来解这道题太没有新意了,可以给出迭代的解法么? ...

  2. selenium-常用操作总结

    from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome ...

  3. SU+GIS,让SketchUp模型在地图上活起来

    一.SU+GIS的场景展示 skp与卫星地图和倾斜摄影模型相结合人工模型与实景模型完美融合 这么一看是不是直接秒杀了单纯看看skp后联想的规划效果? 二.如何快速把草图大师的结果和GIS结合呢?在图新 ...

  4. python_选课系统

    import sys import pickle import os USERINFO = r'C:\Users\12078\PycharmProjects\OldBoy\选课系统\userinfo' ...

  5. 虚拟DOM与diff算法

    虚拟DOM与diff算法 虚拟DOM 在DOM操作中哪怕我们的数据,发生了一丢丢的变化,也会被强制重建整预DOM树.这么做,涉及到很多元素的重绘和重排,导致性能浪费严重 只要实现按需更新页面上的元素即 ...

  6. fcntl函数用法——设置文件锁

    fcntl函数.锁定文件,设置文件锁.设置获取文件锁:F_GETLK .F_SETLK  .F_SETLKW文件锁结构,设置好用于fcntl函数的第三个参数.struct flock{    shor ...

  7. linux解释器、内建和外建命令

    查看系统是哪种命令解释器: [root@localhost ~]# echo $SHELL /bin/bash 内建命令:是shell程序的一部分,包含的是一些比较简单的linux系统命令,这些命令由 ...

  8. python实现祝福弹窗

    接下来教大家怎么用python献上满满的祝福.首先给大家看一下最终模样. 注:密集恐惧症患者勿入! 模样大家已经看见了,首先想想一下,当朋友打开你发送过去的软件, 然后点击运行,结果,一个一个的窗口慢 ...

  9. 精益求精!Spring Boot 知识点全面回顾,带你重新细读源码!

    约定优于配置 Build Anything with Spring Boot:Spring Boot is the starting point for building all Spring-bas ...

  10. 史上最全!2020面试阿里,字节跳动90%被问到的JVM面试题(附答案)

    前言:最近老是收到小伙伴的私信问我能不能帮忙整理出一份JVM相关的面试题出来,说自己在大厂去面试的时候这一块问的是特别多的,每次自己学的时候每次都学不到重点去.这不他来了,一份详细的JVM面试真题给大 ...