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

本文详细介绍了PyQt中的QScrollBar滚动条、QSlider滑动条和QDial刻度盘部件,包括它们的属性、方法、信号和槽。QScrollBar适用于在需要滚动的视图中,QSlider常用于数值输入,QDial提供圆形刻度表。滚动条和滑动条可通过setValue、triggerAction等方法控制,而QDial的wrapping属性决定是否循环移动。
摘要由CSDN通过智能技术生成

一、引言

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

二、QScrollBar滚动条部件

2.1、概述

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

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

2.2、滚动条的部件组成

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

滑块提供了快速转到文档任何部分的方法,但不支持在大型文档中进行精确导航

滚动箭头,滚动箭头是按钮,可用于精确导航到文档中的特定位置。对于连接到文本编辑器的垂直滚动条,这些滚动条通常将当前位置向上或向下移动一行,并将滑块的位置调整少量。在编辑器和列表框中,“行”可能意味着一行文本;在图像查看器中,它可能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
解决这个问题需要关注两个方面。首先,必须重定向 QPlainTextEdit 控件的 stdout 流,以便将所有输出写入窗口。其次,必须对滚动条和文本编辑进行适当的操作,以保持滚动条始终在窗口底部。 以下是示例代码: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QPlainTextEdit from PyQt5.QtCore import Qt class ScrollTextEdit(QMainWindow): def __init__(self): super().__init__() # 创建 QPlainTextEdit 控件 self.textEdit = QPlainTextEdit() self.setCentralWidget(self.textEdit) # 重定向所有输出到文本编辑 sys.stdout = EmittingStream(textWritten=self.normalOutputWritten) def normalOutputWritten(self, text): # 将输出写入文本编辑 cursor = self.textEdit.textCursor() cursor.movePosition(QTextCursor.End) cursor.insertText(text) self.textEdit.setTextCursor(cursor) self.textEdit.ensureCursorVisible() if __name__ == '__main__': app = QApplication(sys.argv) window = ScrollTextEdit() window.show() sys.exit(app.exec_()) ``` 在此示例代码中,我们创建了一个名为 ScrollTextEdit 的 QMainWindow 子类。我们使用 QPlainTextEdit 作为中央窗口小部件,并将所有标准输出重定向到 EmittingStream 类中的自定义槽函数 normalOutputWritten。 在 normalOutputWritten 函数中,我们将所有输出追加到文本编辑的末尾,并调用 setTextCursor 和 ensureCursorVisible 方法确保文本编辑始终显示最新的输入。 此代码应该能够实现 QPlainTextEdit 控件滚动条随新输入自动向下滚动的功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值