質問

各行がビデオ内のフレームを表し、各列がオブジェクトを表す 2D モデルがあります。オブジェクトはフレームごとに異なる状態を持つことができ、これはモデルに保存されます。次に、このデータを表示する QTableView を作成します。モデルにはヘッダー データがあるため、各行には「フレーム k」のようなヘッダーがあり、各列には「オブジェクト n」のようなヘッダーがあります。このテーブルは編集可能です。ただし、ユーザーが別の方法で編集できるようにしたいと考えています。もう 1 つの方法は、単一のフレームを表示するグラフィックス ビューです。グラフィックス ビューの下には、各フレームを表すリスト (水平方向) があります。このようにして、ユーザーはリスト内のフレームをクリックすると、グラフィックス ビューにそのフレームが表示されます。

問題は、リストにモデルの各行の最初の列が表示されることです。私がやりたいのは、代わりに各行のヘッダーを表示することです(リストには「フレーム1、フレーム2など」と表示されます)。これを行う方法はありますか?

役に立ちましたか?

解決

考えられる解決策は 2 つあります。

  1. 単一行の列として行ヘッダーにアクセスするプロキシ モデル (QAbstractProxyModel のサブクラス) を使用してみてください。プロキシ モデルは、元のモデルがヘッダーと見なしたものをデータとして表示するため、自明ではありません。

  2. モデルの 2 番目の 2D ビューを表示しますが、列ヘッダー以外はすべて非表示になります。フレームは行であるため、行と列の間で転置するプロキシ モデルが必要になります。

免責事項:実際にはどの解決策も実装しませんでした。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top