2012-03-29 66 views
1

我需要從大樹模型中刪除很多行。
問題是該模型包含許多父索引。
所以我需要調用beginRemoveRows太多次,使它太慢。QAbstractItemModel批量刪除與許多父母

是否有可能批量刪除許多行,每行都有不同的父級,並避免在每次刪除時更新視圖。
我想避免beginResetModel,因爲它重置整個視圖。

+0

beginResetModel是唯一的解決方案 – 2012-03-29 19:09:32

回答

0

您可以嘗試在小部件更改時禁用更新。使用setUpdatesEnabled false刪除行並在其後設置爲true。

+0

它只會防止重新繪製。它不會阻止每行刪除的視圖重新計算。 beginResetModel用於這樣的操作 – 2012-03-29 21:26:32

+0

我知道,但我認爲這可能會有所幫助,如果樹非常大。我明白,現在正在使用ResetModel是正確的方式。謝謝。 – Fernanda 2012-03-30 02:15:16