2011-07-04 15 views
1

私はuppon WTで構築されたアプリケーションで作業しています。WStandardItemModelでの挿入が遅すぎる

WStandardItemModelに関連付けられたWTableViewに大量のデータを表示する必要があるため、パフォーマンスに問題があります。

テーブルに追加される各新しいアイテムにはない:

(数千回起こる)
model->setData(row, column, data) 

を。

もっと速くする方法はありますか?テーブルにデータを追加する他の方法はありますか?

、それを表示するためのデータと、数分を生成するために2秒かかることができます...

答えて

1

WStandardItemModelは使いやすい汎用モデルであるが、それは非常に大規模モデルには最適ではないのです。 WAbstractTableModelを特化してみてください。 3つのメソッドを再実装するだけで済みます。データが存在する場所からデータを読み込んだり、オンザフライで計算したりすることができます。

通常、表示に数分かかることはありません。パフォーマンスの問題がなくても、何千ものエントリを持つテーブルのビューを使用しました。 (非常に大きな)WStandardItemModelでメモリが浪費されたため、システムがスワップしましたか?