QAbstractTableModelに格納されている一連のデータを表示するQTableViewがあります。私はいつかデータを編集したいので、QStyledItemDelegateを使ってセルをダブルクリックすると(QTextEdit型の)エディタを作成します。しかし、私はキープレスイベントを自分で処理したいのですが、Text EditエディタでKey_Escapeを押すことはありません(EnterやAsciiなどの他のキーもキャプチャできます)。コードをチェックしたところ、EscapeはQTableViewのcloseEditor()関数に直接接続されていました。これは仮想メソッドであり、自動的に呼び出されます。私が知る限り、キープレスイベントはイベント処理の最下位層ですが、このような場合は当てはまりません。Qt:QStyledItemDelegateによって作成されたテキストエディットは、エスケープキープレスイベントを受け取ることができませんか?
私はそれを自分で処理できるように、エスケープキープレスイベントをキャプチャする必要があります、誰も私にこれを行う方法を教えてくれますか?ありがとう!