PyQt(Python+Qt)学习随笔:QScrollBar以及QAbstractSlider滚动条部件功能详解

PYQT 中的滚动条设置,个性化QScrollBar,可用在QTextEdit,scrollArea中等 特别说明一下,只是对某个控件的风格表setStyleSheet()函数进行配置是不能完成个性化滚动条的,我在这里踩了很大一个坑。本篇博客是介绍在代码中如何设置一个个性化的 PYQT 滚动条的,PYQT 原生的滚动条相当丑陋(灰色大帝,白色方块)。同时 ,在 QT Designer 的属性设置中,是缺少滚动条相关的属性设置的。所以现在就给出了一个个性化滚动条的方案。完成效果如图:原UI改动后。 阅读详情

一、概述

在Designer输入部件中Horizontal Scroll Bar和Vertical Scroll Bar都是滚动条部件,实际上这2个部件对应同一个类QScrollBar。在需要从QAbstractItemView派生子类提供滚动条时,QScrollBar非常适合,但如果需要在另一个部件上提供滚动视图,不建议直接使用QScrollBar,而是使用QScrollArea类更方便,因为它同时提供了一个视口部件和滚动条部件。对于大多数使用滑块控件获取给定范围内的值的其他情况,使用QSlider类更适合。

QScrollBar是从QAbstractSlider类派生的,本身除了构造方法外,并没有特殊属性和方法。因此本部分介绍的属性、非构造方法、信号、槽方法实际上都是QAbstractSlider的。

二、滚动条的部件组成

滚动条通常包括四个独立的控件:1个滑块、2个滚动箭头和1个页面控件。

  • 滑块提供了快速转到文档任何部分的方法,但不支持在大型文档中进行精确导航
  • 滚动箭头,滚动箭头是按钮,可用于精确导航到文档中的特定位置。对于连接到文本编辑器的垂直滚动条,这些滚动条通常将当前位置向上或向下移动一行,并将滑块的位置调整少量。在编辑器和列表框中,“行”可能意味着一行文本;在图像查看器中,它可能意味着20像素。
  • 页面控件是拖动滑块的区域(滚动条的背景)。单击此处可将滚动条向单击方向移动一页。此值通常与滑块的长度相同。

三、滚动条的重要属性

  • value属性:每个滚动条都有一个值,该值指示滑块距滚动条起点的距离,该值通过value()获得,并通过setValue()设置,value的值在minimum和maximum之间,可以使用setMinimum()和setMaximum()调整最小值和最大值
  • singleStep属性:表示单步移动的距离,单步移动是指通过单次点击滚动箭头或按压移动光标键后滑块移动的距离
  • pageStep属性:表示移动一页的距离,当按压上下翻页键或在滚动条上下点击鼠标移动的距离
  • tracking属性: 当设置为True时,在拖拽滑块时就会发出valueChanged()信号,否则只有当终止拖拽释放鼠标时才发射该信号
  • sliderPosition属性:滑块当前位置,如果tracking属性为True,则其值与value属性值相等
  • orientation属性:表示是水平滚动条还是竖直滚动条
  • invertedAppearance属性:此属性控制滑块是否反转显示其值。如果为False(默认值),则最小值和最大值将显示在部件的经典位置(如最小值在顶部或左边)。如果该值为真,则最小值和最大值将显示在它们的相反位置
  • invertedControls属性:此属性保留滑块是否反转响应滚动事件和键盘事件。如果此属性为False,则滚动鼠标滚轮“向上”并使用诸如“PgUp”之类的键将滑块的值朝最大值增加。否则,按“PgUp”会将值向滑块的最小值靠近
  • sliderDown属性:此属性用于确认滚动条滑块是否被按住

四、重要的方法、信号和槽方法

  • actionTriggered(int action):这个信号是滑块动作触发,用于告知是进行了单步增或减移动、按页增或减移动、移动到最大值、移动到最小值、或移动过程中,发出信号时,滑块位置已根据操作进行了调整,但该值尚未传播(valueChanged()信号尚未发出),并且视觉显示尚未更新。因此,在连接到该信号的插槽中,可以根据动作和滑块的值,通过自己调用setSliderPosition()来安全地调整任何动作
  • triggerAction(SliderAction action)方法:这个一个方法,触发一个滑块移动事件,类似于模拟一个滑块移动操作,会发射actionTriggered()信号
  • setValue(int):槽方法,调整滚动条的值
  • sliderMoved(int value):此信号在滚动条滑块被按住且滚动条进行移动时发出,一般是拖拽滚动条时发出
  • sliderPressed():此信号在滚动条被鼠标按住,或者程序执行代码setSliderDown(True)时发出
  • sliderReleased():此信号在滚动条松开鼠标按住,或者程序执行代码setSliderDown(False)时发出
  • valueChanged(int value):此信号在滚动条值变更时发出

跟老猿学Python、学5G!

PyQt5高级界面控件之QScrollBar Python QScrollBar是PyQt5中的一个高级界面控件,它提供了一个可滚动的滚动条,用户可以通过滑动滚动条来改变相关部件的值或位置。本文将介绍如何使用PyQt5中的QScrollBar控件,并提供相应的源代码示例。通过使用QScrollBar,我们可以为我们的应用程序添加滚动功能,并根据需求自定义滚动条的外观和行为。除了基本的滚动条外,QScrollBar还提供了一些其他的功能,例如设置滚动条的最小值和最大值,设置滚动条的初始值,以及自定义滚动条的样式。方法设置滚动条的初始值。方法设置滚动条的最小值,通过。 阅读详情

相关推荐

PyQt学习笔记:深入了解QScrollBar和QAbstractSlider滚动条部件功能

在上面的代码中,我们创建了一个名为CustomSlider的自定义滚动条类,继承自QAbstractSlider。QAbstractSlider是QScrollBar的基类,它定义了一些共享的滚动条功能。QScrollBar是QAbstractSlider的一个具体实现,提供了更多的滚动条定制选项。在PyQt中,QScrollBar和QAbstractSlider是用于创建滚动条部件的重要类。本文将详细介绍QScrollBar和QAbstractSlider的功能,并提供相应的Python源代码示例。

DevScript的博客 144

PyQt6 QScrollBar滚动条控件

PyQt6提供了两个滚动条控件,分别是水平滚动条HorizontalScrollBar和垂直滚动条VerticalScrollBar,但这两个滚动条控件对应的类都是QScrollBar类,这两个控件通过水平的或垂直的滚动条,可以扩大当前窗口的有效装载面积,从而装载更多的控件。滚动条控件通常与其他控件配合使用,如ScrollArea、TableWidget表格等,另外,也可以使用滚动条控件实现与滑块控件同样的功能,实际上,滚动条控件也是一种特殊的滑块控件。

java1234的博客 721

Qt双滑块滑动器(slider)控件

自己制作的双滑块滑动器,这只是一个模本,较完整版删减了很多功能 中间的空白处可以自己加载调色板进行填充 已经写了一组返回值,一组信号 点击滑块中间位置,可以同时拖动两个滑块

PyQt5_信号与槽_QScrollBar组件和其参数

QScrollBar

Asphy的博客 837

Oracle EBS R12 AP模块发票导入接口实战:从SQL插入到API调用的完整流程

本文详细解析了Oracle EBS R12 AP模块发票导入接口的完整流程,从SQL插入到API调用的实战技巧。涵盖接口表设计、数据验证、双通道导入机制及错误诊断,特别分享官方文档未提及的高阶优化方案,助力企业实现财务数字化转型。

weixin_33728268的博客 476

从“盲控”到“预见”:聊聊永磁同步电机负载观测器(PMSM Load Observer)如何让控制更丝滑

本文深入探讨了永磁同步电机负载观测器(PMSM Load Observer)如何通过前馈补偿和转动惯量辨识技术实现智能抗扰控制。从传统‘盲控’到预见性调节,负载观测器显著减少转速波动和能耗,提升系统响应速度。文章详细解析了观测器算法架构、工程调参技巧及前沿发展趋势,为电机控制领域提供实用解决方案。

weixin_33737774的博客 406

java slider gkwr_PyQt(Python+Qt)学习随笔:QScrollBar以及QAbstractSlider滚动条

一、概述在Designer输入部件中Horizontal Scroll Bar和Vertical Scroll Bar都是滚动条部件,实际上这2个部件对应同一个类QScrollBar。在需要从QAbstractItemView派生子类提供滚动条时,QScrollBar非常适合,但如果需要在另一个部件上提供滚动视图,不建议直接使用QScrollBar,而是使用QScrollArea类更方便,因为它同...

weixin_35182625的博客 295

Zynq裸机调试RTL8211FS网卡踩坑记:从ping不通到完美兼容的完整代码修改

本文详细记录了在Zynq平台上使用Xilinx SDK(XSDK)调试RTL8211FS网卡的完整过程,从最初的ping不通问题到最终实现完美兼容的解决方案。通过分析PHY芯片的寄存器配置差异,提供了关键代码修改和调试技巧,帮助开发者快速解决类似问题。

weixin_42550597的博客 421

python刻度条控件是_第15.44节、PyQt输入部件:QAbstractSlider派生类QScrollBar滚动条、QSlider滑动条、QDial刻度盘功能详解...

一、引言Designer中的输入部件Horizontal ScrollBar水平滚动条、Vertical ScrollBar垂直滚动条、Horizontal Slider水平滑动条、Vertical Slider垂直滑动条以及Dial刻度盘对应的类都是QAbstractSlider类的派生类。这些部件都可以表示在指定区间范围内的数值,并通过拖拽滑块或指针进行移动改变值。二、QScrollBar滚动...

weixin_39932838的博客 706

【脑电绘图教程 2】使用Brainstorm进行脑电处理及源定位

Brainstorm 是一个开源应用程序,支持MEG、EEG、fNIRS、ECoG、深度电极和其他电生理学的数据分析,尤其用于MEG、EEG的源定位。Brainstorm的主要优点是其简单直观的图形界面,不需要进行任何编程,即可上手MEG、EEG分析,此外,它还支持多种数据类型(基本上EEGLab支持的,它都支持),并且具有数据批量处理功能,可以很方便的分析自己的数据。

qq_40735196的博客 1万+

从Unitree B2W到四足机器人:用Isaac Lab构建强化学习奖励函数的5个实战技巧

本文分享了在Isaac Lab仿真环境中,为Unitree B2W等四足机器人设计强化学习奖励函数的5个核心实战技巧。内容涵盖奖励函数的结构化组合、轮腿混合机器人的适配策略、课程学习的动态调整、域随机化增强鲁棒性以及高效的调试可视化方法,旨在帮助开发者构建更稳定、高效的机器人运动策略。

lg888的博客 1066

python PyQt5 QtWidgets.QAbstractSlider类(QScrollBar,QSlider和QDial之类的小部件的公共超类)

https://doc.qt.io/qtforpython/PySide2/QtWidgets/QAbstractSlider.html?highlight=valuechanged#qabstractslider 文章目录继承关系细节描述 继承关系 细节描述 该类被设计为QScrollBar,QSlider和QDial之类的小部件的公共超类。 这是该类的主要属性: value:QAbstr...

Dontla的博客 708

手把手教你用GPIO模拟MDIO时序,搞定Linux下那些‘不听话’的PHY芯片

本文详细介绍了如何利用Linux内核的`virtual,mdio-gpio`驱动,通过GPIO模拟MDIO时序来解决特殊PHY芯片的驱动调试问题。从硬件准备、设备树配置到驱动实现,提供了完整的解决方案和实战案例,帮助开发者应对非标准时序的PHY芯片挑战。

weixin_29188043的博客 270

GUI编程--PyQt5--QAbstractSlider

滑块、鼠标选区

weixin_45228198的博客 647

COMSOL报错调试总结(不定期更新)

COMSOL报错调试总结1. 可定位错误1.1 除零错误1.2 未定义变量值1.3 边界条件/材料属性等缺失2. 难定位错误2.1. 装配期间内存不足 官方给的案例总是非常完美,运行流畅,结果完美。但是自己做模型时候就总是报错,而且不像自己coding的程序那样可以明确定位哪里出了bug。这里把我碰到的一些报错问题以及调试方法记录下来~ 部分来源于以下参考来源: http://wap.sciencenet.cn/blog-1467490-1118453.html?mobile=1 1. 可定位错误 以下错误

jessica0307的博客 8万+

使用Qt和MX Component插件实现与菱PLC的通信

在本文中,我们介绍了如何使用Qt和MX Component插件实现与菱PLC的通信。我们首先安装和配置了MX Component插件,并在Qt项目中初始化和使用MX Component来连接、读取和写入PLC的数据。安装完成后,您需要在Qt项目中配置MX Component的路径,以便Qt可以找到所需的库文件。在本文中,我们将探讨如何使用Qt和MX Component插件来实现与菱PLC的通信。在主函数中,我们将初始化MX Component,并创建一个与PLC通信的示例。在上面的代码中,我们使用了。

TlScratch的博客 996

QT入门Input Widgets之QScrollBar

qt控件

Littlehero_121的博客 3344

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【Qt】滚动条QScroolBar实现滚屏功能

环境:Qt5.3 编译器:Qt Creator 功能:Qt滚屏功能

shihoongbo的博客 3万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

chatgpt赋能python:Python中tk窗口里滚动条(Scrollbar)详解

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

b45e1933f46的博客 2343

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

PyQt——QScrollBar

# -*- coding: utf-8 -*- ''' 【简介】 PyQt5中 QScrollBar 例子 ''' import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class Example(QWidget): def __...

极地星辰 561

QML控件类型:ScrollBar、ScrollIndicator

ScrollBar 一、描述 ScrollBar 是滚动条控件,可用于滚动到特定位置。滚动条可以附加到任何 Flickable,例如 ListView 和 GridView。 Flickable { // ... ScrollBar.vertical: ScrollBar { } } 1.1、将 ScrollBar 附加到 Flickable 当 ScrollBar 垂直或水平附加到 Flickable 时,它的几何图形和以下属性会根据需要自动设置和更新: orientatio

友善啊,朋友的博客 7882

45- 输入和显示-滚动条控件QScrollBar

为滚动条指定的值的范围通常与为QSlider指定的值不同,因为需要考虑滑块的长度。如果我们有一个有100行的文档,并且我们在一个小部件中只能显示20行,那么我们可能希望构建一个页面步长为20、最小值为0、最大值为80的滚动条。滑块的长度通常与页面步长的值有关,通常表示滚动视图中显示的文档区域的比例。actionTriggered(action:int)信号在用户用鼠标或键盘键改变滑块位置时发送,根据改变方式的不同,信号的参数值也不同action 的值可以取以下值,对应的值分别是0~7,例如。

***** 2586

Python 使用tkinter的Scrollbar方法创建Text水平和垂直滚动条

在Python的Tkinter中,可以使用Scrollbar来实现Text组件的上下或左右滑动。首先,需要创建一个Scrollbar对象并将其与Text组件绑定,然后将Scrollbar放置在Text组件的右侧或底侧,使其能够控制Text组件的上下或左右滑动。

zhouhua2022的博客 4833

PyQt6第四章控件功能之4.2常用控件(4.3.3滚动条: QScrollBar)

滚动条包括水平滚动条 HorizontalScrollBar和垂直滚动条VerticalScrollBar,可以扩大当前窗口的有效装载面积,对应QScrollBar类。valueChanged:当滚动条的值发生改变时发射该信号。sliderMoved:当用户拖动滚动条的滑块时发射该信号。setMinimum():设置滚动条最小值。setMaximum():设置滚动条最大值。setValue():设置滚动条的值。value():获取滚动条的当前值。Horizontal:水平滚动条。

qq_43960238的博客 1130

HorizontalScrollView 详解

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33962621的博客 484

Qt 小技巧(1~9)

Qt 滚动条相关, web相关: scrollbar javascript

tongyi04的博客 3211
上一篇: 第15.43节、PyQt输入部件:QAbstractSpinBox派生类QSpinBox、 QDoubleSpinBox、QDateTimeEdit、QDateEdit和QTimeEdit功能简介
下一篇: PyQt(Python+Qt)学习随笔:QSlider滑动条部件功能简介
LaoYuanPython
LaoYuanPython 2020年博客之星Top3 2020年博客之星Top3 领域专家: Python技术领域 领域专家: Python技术领域
博客等级 码龄8年 15万+粉丝 1324原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LaoYuanPython

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值