QTreeWidget快速更新



我正在用Qt (c++)编写一个软件,该软件解析具有大量数据(数十万行)的文本文件,然后将每行链接到视频的特定帧。然后它播放视频,同时在QTreeWidget中显示与当时显示的帧相关的文件行。

因此,由于视频是30fps,软件需要每30ms更新一次QTreeWidget,所以它必须清除QTreeWidget,然后将新行放入其中。

然而,当我面对每帧大约100-200行时,更新速度相当快,但如果我必须每帧处理1000行,它就会变得非常慢,程序最终会崩溃。

有没有办法加速更新?每30毫秒1000 QTreeWidgetItems的速率太高,或者我做错了什么?

您应该首先禁用更新QTreeWidget:

MyTreeWidget→setUpdatesEnabled(假);

然后更新项目,并使树更新:

MyTreeWidget→setUpdatesEnabled(真正);

如果这没有很大帮助,可以考虑使用带有自定义数据模型的QTreeView。

最新更新