編集の進行中にエディター(QLineEditインスタンス)を取得する方法はありますか?
質問する
1937 次
1 に答える
7
デリゲートは編集ウィジェットを作成しますが、それを保存せず、ビューはそれにアクセスできません(おそらく永続的ではないため)。
したがって、返されたポインタのコピーを格納するには、サブクラス化QStyledItemDelegate
して再実装する必要があります。createEditor(QWidget*, const QStyleOptionViewItem&, const QModelIndex&) const
次に、デリゲートを介してエディターへのアクセスを提供できます。
AFAIKでは、1つのビューで一度に複数のエディターを作成することはできません。また、ビュー間での代理人の共有はお勧めしません。そのため、最後に作成したエディターを保持するだけで十分です。また、ポインターをnullにして、作成したエディターの破棄されたシグナルに接続するプライベートスロットを作成します。これにより、ポインターが常に有効であることがわかります。
于 2013-01-28T13:53:00.270 に答える