0

私は大規模なマルチファイル Qt インターフェイスを使用しており、複数の部分を Qt3 から Qt4 に更新しています。残念ながら、途中で、別のマウス ボタンの組み合わせを押して中央の QGLWidget シーンを移動 (移動、回転など) する機能を削除しました。元のマウス イベントに加えた変更は、次のようなものでした。

年:

 if(e->state() & Qt::ControlButton){ /*... do things  */ }

新着:

if(e->buttons() & Qt::ControlModifier){ /*... do things  */ }

e->button()また、新しいバージョンで単純に使用しようとしましたが、役に立ちませんでした。マウスで発生するはずだった元のことは、もはや行われません。ユーザーガイドから、古い関数はイベントが生成される直前のボタンの状態を返しstate()その後すぐに状態を返すことがわかりますが、これは推奨される置換でした (これらのタイミングについてはあまり知りません)ので、どの程度の違いがあるかはわかりません)。buttons()

とにかく、プログラムを実行すると、メッセージが表示されることに気付きましたQWidget::insert action: Attempt to insert null action。これはマウスイベントに関連している可能性がありますか (それは私の最初の本能でした)?

もしそうなら、私はマウスについて何ができますか?そうでない場合は、とにかく修正する必要があるので、問題の原因となっているウィジェット/アクションを追跡する方法はありますか?

4

0 に答える 0