アプリケーションをユーザーにとってより柔軟にするために、ユーザーがアプリ内のいくつかのアクションに対してホットキーを選択できるようにしたいと考えています。
これを行うには、設定ウィンドウにいくつかのページを作成します。
アクション名と入力(QLineEdit) ここで、
Quit |Alt+Q|のようにキーが表示されます。
そのようなホットキーをキャプチャする最良の方法は何ですか?
1 に答える
0
まず、QAction のsetShortcutを設定することができます。これは、まさにあなたが望むことを行います (ユーザーがシーケンスをヒットしたときに QAction をトリガーします)。例:
myAction->setShortcut(QKeySequence(Qt::Key_Backspace));
詳細については、QKeySequence クラスのドキュメントを参照してください
編集: シーケンス自体を取得するには、ここを参照してください - https://stackoverflow.com/a/6665017/1741118。この答えはうまくいくはずです。キーシーケンスのイベントをキャプチャするウィジェットから、シーケンスを入力するか、そこでオーバーライドするか、すべてのウィジェットにQKeyPressEvent
設定することができます。QEventFilter
于 2013-10-28T09:16:27.560 に答える