Qt 5 では、キーボードの状態を確認する方法が見つかりませんでした。
たとえば、特定のキー (矢印キー、またはその他のキー) が押されているかどうかを確認したいと思います。
箱から出してはいけません。Qt はマウスとキーボードのイベントを処理している間、マウスボタンとキーボード修飾子のステータスを追跡し、それらを と に返しQ(Gui)Application::mouseButtons()
ますkeyboardModifiers()
。
したがって、グローバル イベント フィルターを使用して同じことを行うことができQCoreApplication
ますQCoreApplication::notify
。すべてのキーのステータスを追跡します。ただし、これがどれほど役立つかはわかりません。現在フォーカスされているウィジェットチェーンでキープレスを処理しないのはなぜですか?
(上記は Qt アプリケーションにフォーカスがある場合にのみ適用されることに注意してください。フォーカスがない場合でもキーボードの状態を検出することについて話している場合、Qt はまったく役に立ちません。)