什么是在QT中显示大量文本的好方法

时间:2016-09-08 18:32:21

标签: qt qtextedit g-code

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

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

我已经考虑过为用户添加“正在加载,请稍候”的消息,但我想知道是否有办法加快文本加载过程。

现在我的代码看起来像这样:

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

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

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

1 个答案:

答案 0 :(得分:1)

“QPlainTextEdit是一个支持纯文本的高级查看器/编辑器。它经过优化,可以处理大型文档并快速响应用户输入。”

您可以查看来自here的详细信息。