2

からサブクラス化された独自のテーブル モデルがありQAbstractTableModelます。私のビューにインストールされています(からサブクラス化されていますQTableView)。ビュー内では、QItemDelegate項目を編集するためにデリゲート クラス (からサブクラス化) を使用しています。

次の動作を設定したい: デリゲートを使用してデータの編集を終了すると、モデルの次の項目 (次の行と同じ列の項目) が編集可能になるはずです。

ドキュメントには、シグナルQAbstractItemDelegate::EditNextItemで送信されるヒントによって提供されると書かれていcloseEditor()ます。ただし、デフォルトでは、このシグナルはQAbstractItemDelegate::NoHintパラメータとともに送信されます。QItemDelegate問題は、たとえば次のような基本的な仮想関数を再実装するときに、このシグナルを明示的に呼び出す必要がないことsetModelData()です。

QAbstractItemDelegate()ドキュメントには、このシグナルは、コンストラクターの呼び出し中にアイテム デリゲートにインストールされた内部イベント フィルターによって送信されるとも書かれています。

どうすれば独自EndEditHintcloseEditor()シグナルを提供できますか?

4

1 に答える 1