私の最終的な目標は、キーボード レイアウト (qwerty、qwertz、azerty...) に関係なく、[1] キーの左側のキーを pyqt のショートカットにバインドすることです。それはqtによって直接サポートされていません。
したがって、Qtドキュメントで言及されていない(またはどこかに隠されている)方法を探しているか、ハードウェアキー番号を実際のキーに変換することにより、その前に純粋なPythonでキーを前処理する方法を探していますプログラム起動時の現在のレイアウト。
次に、実際のキーを pyqt に渡すか、その他のツールキットに渡すことができます。ツールキットは何も知る必要はありません。
ワンキーの左側のキーには、キー番号「1」が付いている場合があります ( http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp?topic=%2Fcom.ibm.aix を参照してください。 keyboardtechref%2Fdoc%2Fkybdtech%2FKey.htm )。
このキーを qt でインターセプトして「nativeScanCode」を出力すると、結果として「49」が得られます。
全体として、私はPythonのみのソリューションを好みますが、Qt依存も問題ありません。
理由: これは (レイアウトに関して) 非常に使いやすいキーですが、言語に大きく依存するためです。一部のキーボード言語では、分音記号付きの文字を作成するために 2 番目のキーを必要とする「デッド キー」でさえあります。
自分でテストしたい場合は、qwerty と qwertz を使用して z キーと y キーを取得するだけです。これは、左のキーよりも単純な例ですが、原則として同じ問題です。目標は、qwertz か qwerty かに関係なく、キーボードの左下隅にあるキーによって常にトリガーされるショートカットです (名前が示すように、これら 2 つの違いは、z と y が逆になっていることです)。