比較したい2つのQKeyプレスイベントがあり、1つのキープレスが「AddShortcut」フォームによって入力され、メインフォームでユーザーのキープレスとAddshortcutフォームに入力されたキープレスを比較したい.
両方のイベントを比較する方法はありますか?
あなたが何をしようとしているのか正確にはわかりませんがQAction
、まだ見ていない場合に備えて の存在を指摘します。これは、Qt がキーボード ショートカットなどを実装するメカニズムです。
http://qt-project.org/doc/qt-4.8/qaction.html#details
特定の質問に関しては、ベースライン QEvent クラスには等値演算子または比較演算子が定義されていません。いずれにせよ、平等はあいまいなトピックになります(同じピクセル座標にある場合、マウスのクリックは等しいですか? Ctrl/Alt/Shift が押された場合はどうなりますか) ?
2 つのキー押下イベントが等しいかどうかをテストするだけの場合は、最初にQEvent::type()を使用してそれぞれのイベント タイプをテストできます。両方である場合は、両方のイベントに対応QEvent::KeyPress
できます。static_cast<QKeyEvent>
次に、関心のある部分が等しいことを確認できます。
明らかにQKeyEvent::key()がありますが、修飾子、生成されるテキストなどもあります: