キーボードや複数のキーボードなしでXキーコードを使用しますか?

キーボードや複数のキーボードなしでXキーコードを使用しますか?

私のラップトップでは、QJoypadを使用していくつかのボタンをキーにマップし、アーケードボタンを使用してレトロなゲームをプレイできます。 Qjoypadは次のようなものを生成します。

Joystick 1 {
    Axis 1: +key 116, -key 111
    Axis 4: +key 113, -key 114
    Button 1: key 65
}

この数字はXキーコードで、プログラムにありますxev。 ~からここ:

Xサーバーは、Xキーコードとキーシンボルを含む2つのレベルのキーエンコーディングを使用します。 Xキーコードはシングルバイト値です。キーにキーコードを割り当てるXサーバーの実装と物理キーボードによって異なります。したがって、Xアプリケーションは通常、キーコードを直接使用することはできません。代わりに、キーコードはスペース、エスケープ、x、2などの名前を含むキーシンボルにマップされます。

ところでここで混乱します。

  • 私のシステムに2つのキーボードがあるとどうなりますか?

  • キーボードがない場合(例:Raspberry Piを使用)、どうすればいいですか?

これに地図時間、この人はRaspberry Piおよび外的なキーボードが付いているQjoypadを使用します。キーボードを外してもまだ機能しますか?それでは、Xキーコードはどのように生成されますか?

ベストアンサー1

キーボードaアクションEnterXインフラストラクチャは、そのようなイベントがどこから来るのか気にせず、他のアプリケーションでそれらを合成したり、必要な数のQJoypadキーボードを接続してそのようなイベントを生成したりできます。

実際、View Device Treeを使用すると、xinput「Virtual Core Keyboard」に接続されている複数のデバイスを表示できます。これらのデバイスはすべて、キーイベント(ほとんど「電源ボタン」キーイベント)を生成できます。

したがって、システムにキーボードが0個、2個、または100個あっても動作します。

しかし、キーシムとキーコードが必要です。キーコードに一致するキーサムを見つけることができるルーチンがあるので(またはその逆)、それを使用したいと思いますQJoypad

おすすめ記事