我正在编写一个日志应用程序,它使用带有自定义QStandardItems的QListView来显示日志数据。我在应用程序中实现了过滤器,它们会对匹配的行进行不同的着色,在更改过滤器时,我必须操作列表中的每个项目,过了一段时间后变得很慢。我不确定是什么造成了这种情况,但我想知道它是否可以在每个项目更改后重新绘制。如果是这样的话,在我完成操作所有项目之前,我能否以某种方式告诉QT不要重新绘制?
感谢您的帮助!
答案 0 :(得分:0)
为了帮助其他人,我可以补充一点,我通过实现自己的视图来处理paint事件本身并仅绘制屏幕上当前可见的行来修复此问题。这使得它非常快,并且没有内部QT视图似乎能够做类似的事情。