私にはQWidget
というアプリケーションがあります。このQWidgetは、垂直方向のQSplitter
を使用して2つの部分に分かれています。特定のアプリケーションのQTableViewに静的な行番号を表示するクエリ
2つの部分がある:左
QTreeWidget
。QTableView
右側
QTableViewで使用されるモデルはQAbstractTableModelから継承されます。
QTreeWidgetで行を選択すると、右側のQTableViewを更新する必要があります。 QtableViewは、行番号を昇順に表示し、1つの列にオブジェクト名を表示する必要があります。行番号を表示するには、垂直ヘッダーにQAbstractTablemodelのsetHeaderData
を使用しています。 この関数を使用する際に問題が発生しています。
問題
私はまた、オブジェクト名の列をソートするQSortFilterProxyModel
を使用しています。私が直面している問題は、列の水平ヘッダーをクリックしてオブジェクト名を使用して列を並べ替え、その行を選択すると、垂直ヘッダーの行番号が変更されるという問題です。
オブジェクト名の列を並べ替える間に垂直方向の変更に行番号を表示する方法はありますか?
これは解決策ではなく、すばやく簡単な修正です。垂直ヘッダーに数字だけが含まれていると仮定すると、並べ替え後に垂直ヘッダーをいつでもリセットできます。あるいは、変更があるたびに元の状態に復元するカスタム 'QHeaderView'を使用してください。チェックしたい信号は['QHeaderView :: sectionMoved(...)'](http://doc.qt.io/qt-4.8/qheaderview.html#sectionMoved) – Marcus
例を挙げてください同じもののためのコード – Geek