pyqt6怎么实现多行文本一行一行的写入并展示
如图,右侧代码中向多行文本框添加文本是在while循环内,左侧是运行结果。它运行时是while循环结束后,文本才会显示。
但我想要的是,它append一条,左边文本就追加显示出来。
请问怎么写才能做到呢 from PyQt6.QtWidgets import QApplication, QMainWindow, QTextEdit, QVBoxLayout, QWidget
from PyQt6.QtCore import QCoreApplication
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建多行文本框
self.text_edit = QTextEdit()
# 设置窗口的中央部件和布局
central_widget = QWidget()
self.setCentralWidget(central_widget)
layout = QVBoxLayout()
central_widget.setLayout(layout)
layout.addWidget(self.text_edit)
# 模拟的数据生成和文本更新
self.simulate_data_stream()
def simulate_data_stream(self):
for i in range(10):# 假设这是一个获取数据的循环
line = f'这是第 {i} 行文本\n'
self.text_edit.append(line)
QCoreApplication.processEvents()# 强制立即处理挂起的事件
# 创建应用实例和窗口
app = QApplication([])
window = MainWindow()
window.show()
# 运行应用程序的事件循环
app.exec()
试试在第46行selft.text.append(content)下面加一行代码,刷新多行文本框。 zjg121 发表于 2024-4-5 00:22
试试在第46行selft.text.append(content)下面加一行代码,刷新多行文本框。
试过的,不行:'(weeqw SendingSonGY 发表于 2024-4-5 19:51
试过的,不行
self.text_edit.insertPlainText(text) 看看这个代码怎么用 zjg121 发表于 2024-4-5 19:56
self.text_edit.insertPlainText(text) 看看这个代码怎么用
这个我也试过的,不行,问题已经解决,一楼大哥的代码帮我解决的
一闪一闪233 发表于 2024-4-5 00:21
from PyQt6.QtWidgets import QApplication, QMainWindow, QTextEdit, QVBoxLayo ...
谢谢老哥,解决了,太感谢了老哥 我还没有用到这些用界面的程序。觉得有界面挺高级的。 zjg121 发表于 2024-4-5 20:07
我还没有用到这些用界面的程序。觉得有界面挺高级的。
我也是学着玩的,多个技术栈也不错
页:
[1]