控件-文本框
文本框主要有两类,为富文本框(QTextEdit)和纯文本框(QPlainTextEdit),在学习新的控件的时候, 需要掌握的内容主要除了属性之外,其信号触发方法也非常重要。还可以利用Designer来辅助我们进行学习,尤其是利用Designer的属性展示和设置。
富文本框比起纯文本框而言,可以支持多种文本格式,如字体样式(加粗、斜体、下划线等)、字体颜色、段落格式(对齐方式、缩进等)、插入图片、超链接等。如果是只针对于文字操作的话,二者的属性和信号都一样,都可以使用setPlainText
和 TextChanged
进行设定。
【代码示例】创建一个富文本框,分别设置html标签、markdown标签和纯文本进行展示
from PySide6.QtWidgets import QApplication,QWidget,QTextEdit,QVBoxLayout,QPushButton
class MyWindow(QWidget):
def __init__(self):
super().__init__()
textedit = QTextEdit()
# textedit.setHtml('<h>这是一个html标题<h>')
# textedit.setMarkdown('# 这是一个markdown标题')
textedit.setPlainText('这是一个纯文本标题')
btn = QPushButton('添加文本')
btn.clicked.connect(lambda :textedit.append('这是添加的文字'))
self.mainlayout = QVBoxLayout()
self.mainlayout.addWidget(textedit)
self.mainlayout.addWidget(btn)
self.setLayout(self.mainlayout)
if __name__ == '__main__':
app = QApplication()
window = MyWindow()
window.show()
app.exec()
运行结果: