# -*- coding:utf-8 -*-
"""
@Time:2022/3/23 19:57
@Author:小柠檬
@File:plain_text_edit.py
"""
import time
from PyQt5 import uic, QtCore
from PyQt5.QtCore import QThread, pyqtSignal
from PyQt5.QtWidgets import QApplication
class AppendThread(QThread):
signal = pyqtSignal(str)
def run(self):
for i in range(100):
self.signal.emit(f'追加小柠檬{i}')
time.sleep(0.05)
class PlainTextEdit:
# 多行的纯文本编辑框
def __init__(self):
# 加载UI界面
self.ui = uic.loadUi("plain_text_edit.ui")
# 1.获取文本
plain_text_edit_text = self.ui.plainTextEdit.toPlainText()
print(plain_text_edit_text)
# 2.设置提示文本
self.ui.plainTextEdit_tip.setPlaceholderText('请输入小柠檬')
# 3.设置文本
self.ui.plainTextEdit.setPlainText('我是后来添加的文本,会覆盖之前的内容')
# 4.清空文本
self.ui.plainTextEdit.clear()
# 5.追加文本
self.ui.plainTextEdit.appendPlainText('我是追加的文本,不会覆盖之前的内容')
# 6.多线程追加文本
self.append_thread = AppendThread()
self.append_thread.signal.connect(self.slot_plain_text_edit)
self.append_thread.start()
def slot_plain_text_edit(self, text):
self.ui.plainTextEdit.appendPlainText(text)
def main():
QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling) # 和designer设计的窗口比例一致
app = QApplication([])
plain_text_edit = PlainTextEdit()
plain_text_edit.ui.show()
app.exec_()
if __name__ == '__main__':
main()
pyQt5-plainTextEdit常用方法
最新推荐文章于 2024-05-15 09:31:56 发布