5

基本的に関数f(a,b)から派生した、多くのデータを表示するために使用される QTableWidget があります。すべての a値は水平ヘッダーに入り、すべてのb値は垂直ヘッダーに入り、すべてのf(a,b)は対応するセルに入ります。

列はソート可能である必要があります。ユーザーが列をクリックすると、その列のすべての値がソートされ、他のすべての列も「同期」されます。これは、行全体がソートされるためです (クリックされた列をソート基準として使用)。

これは機能します。「ヘッダー列」以外は、縦のヘッダーです。垂直ヘッダーは変更されず、再編成された行と同期しません。これは意図した動作ですか?私のコードのバグですか?垂直ヘッダーも並べ替えるにはどうすればよいですか? または、 bを通常の列に追加する必要がありますか?

編集:ヘッダー列を通常の列にすることで解決しました。ただし、垂直ヘッダーが他の列と並べ替えられない理由にはまだ興味があります。

4

1 に答える 1

2

QTableWidgetの代わりに QTableViewを使用してみてください。f(a,b) の計算にはQAbstractTableModel
を 使用します。

于 2011-10-13T16:27:58.867 に答える