私はQTableWidgetにrestoreState()を使用するときに、なぜQtは以上の3つの列を追加しますか?

StackOverflow https://stackoverflow.com/questions/915352

  •  06-09-2019
  •  | 
  •  

質問

私のコードは次のように何とかなります。

table = QTableWidget()
table.horizontalHeader().restoreState(settings.value("savedState"))
table.setColumnCount(3)

settings.setValue("savedState", table.horizontalHeader().saveState())
私が初めてそれを実行した場合は、

それだけで3列のヘッダーがあります。 ...奇妙なことがtable.columnCount() 6と第三9が存在している二度目は私がtable.setColumnCount(3)を削除すると何の列が全く存在しない、常に3です。

なぜ、この出来事があり、それはバグや意図的なのですか?

UPDATE

table.clearContents()はそれが仕事作っ前table.setColumnCount(3)を追加します。私はまだそれはバグだと思います。

役に立ちましたか?

解決

どのプラットフォームおよびこれをQtのバージョンは何ですか? http://chaos.troll.no/~hhartz/tablecolumns.tar のようです使用して正常に動作する最新のQt 4.5

他のヒント

何をしてどうなりますか?

table = QTableWidget();
table.setColumnCount(3);
table.horizontalHeader().restoreState(settings.value("savedState"));
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top