0

比較したい2つのQKeyプレスイベントがあり、1つのキープレスが「AddShortcut」フォームによって入力され、メインフォームでユーザーのキープレスとAddshortcutフォームに入力されたキープレスを比較したい.

両方のイベントを比較する方法はありますか?

4

1 に答える 1

1

あなたが何をしようとしているのか正確にはわかりませんが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()がありますが、修飾子、生成されるテキストなどもあります:

http://qt-project.org/doc/qt-4.8/qkeyevent.html

于 2012-07-10T19:32:57.983 に答える