QT显示很多文字有什么好的方法

What's a good way to display a lot of text in QT

我正在构建一个将读取 gcode 文件的应用程序。文件从几 KB 到几百 MB 不等(但这很少见)。用户选择一个文件后,程序会遍历它并逐行读取。这根本不需要很长时间。

我想在 QTextEdit 小部件中显示我刚刚读入的文件的文本。不幸的是,这样做需要很长时间(即使是小文件也需要几秒钟)。

我考虑过只为用户添加一条 "loading, please wait" 消息,但我想知道是否有加快文本加载过程的方法。

现在我的代码如下所示:

 QTextStream in(gcodeFile); //The file path was given by the user
 ui->textEdit->setText(in.readAll());
 in.seek(0);
 processGcode();

有没有更好的方法可以将大量文本加载到 QTextEdit 中而不会使应用程序挂起?

注意:问题不是我正在阅读文件两次。我更改了我的代码,以便它在将文本添加到 QTextEdit 的同时进行处理,但整个过程仍然花费了太长时间。

"QPlainTextEdit is an advanced viewer/editor supporting plain text. It is optimized to handle large documents and to respond quickly to user input."

您可以在here查看支票详细信息。