公众号:uncle39py

V1

2023/04/26阅读:15主题:默认主题

70.PyQt多行文本框

本节介绍

普通文本编辑器QPlainTextEdit,

富文本编辑器QTextEdit

QPlainTextEdit性能优于QTextEdit

一.前言

继承结构图:

QObject--Qwidget--QFrame--QAbstractScrollArea

QFrame: 设置边框样式的

QAbstractScrollArea:抽象的滚动区域;主要用于设置水平/垂直滚动条的滚动策略(什么时间显示滚动条)

QPlainTextEditQTextEdit都是QAbstractScrollArea的子类,用于接收用户输入的多行文本,当行数超出了限制,就会出现滚动条

二.QPlainTextEdit

def init_ui(self):
    pte = QPlainTextEdit(self)
    pte.resize(200,100)
    pte.setPlaceholderText("提示文本")
    pte.setReadOnly(True)
  • 设置是否软换行(重要)

如果没有软换行,则不会自动换行,水平方向会出现滚动条

  • 程序中插入内容(了解即可)
  • 块的操作

文本框中一个换行为一个块,块将白点就是段落的意思,默认情况下允许输入无数块(无数个段落)的内容

如果设置了最大块(段落)个数,那么此时如果再换行输入新的块(段落)内容,会把最早输入的块(段落)的内容给删除.

pte.blockCount()#获取当前块(段落)数量
pte.setMaximumBlockCount(3)#设置最大块(段落)的个数
  • 放大/缩小
pte = QPlainTextEdit(self)
btn = QPushButton("按钮",self)
btn.move(100,300)
btn.clicked.connect(lambda : pte.zoomIn(1))
#pte.zoomIn(1) 参数大于0表示放大,小于0表示缩小
#此处点击按钮则放大一点
  • 信号

三.QTextEdit

QTextEdit可以加载纯文本和富文本

QTextEdit的基础用法、文本提示、对齐方式与QPlainTextEdit一样,此处不赘述

  • 涉及的信号(了解)
  • 通过程序设置内容,展示出来(了解)

append(str)追加文本

clear()清空文本

四.小结

QTextEdit此处呈现的内容差不多与QPlainTextEdit类似,

它还有其他功能,比如可以插入图片、列表、表格、段落等,鉴于内容琐碎晦涩且没什么鸟用,先不深入了解,用到再说

分类:

后端

标签:

后端

作者介绍

公众号:uncle39py
V1