0

XNextEvent のループに基づいて、Xlib を使用してマウスとキーボードのデバイス パスを取得する方法はありますか? /dev/input/event* がマウス プレスやキーボード キー F1 プレスなどの特定のイベントを生成するものを知る必要があります。

Xorg で入力デバイスに evdev を使用しています。ドキュメントを検索しましたが、方法が見つかりません。

マウスの押下やキーボードの押下などのイベントに基づいて入力デバイスを識別するために使用できるアプリの提案も受け入れます。

ありがとう。

編集:別のライブラリを使用してこれを作成する方法がある場合は、Python のバインディングを備えた望ましいものを教えてください。

4

1 に答える 1

2

Xlib には入力デバイスのファイル記述子を取得する方法がないことに気付いたので、このケースを解決する別の方法を考え出しました。同じ問題。

モジュールpython-evdev (ubuntu の pip でインストール) を使用しています。このモジュールを使用すると、デバイスを監視できます。マウスまたはキーボード (モジュール evdev を使用し、デバイスが ecodes.KEY_F1 や ecodes.BTN_MOUSE などのイベント コードで "capabilities(verbose=True)" を持っているかどうかを確認する) であり、イベントが発生したときに共有変数に書き込みます。監視する必要があります。

WindowsマネージャーなしでXorgで実行されているグラフィックインターフェースの場合、私はpython-glade2を使用して魅力的に機能し、xinitを使用してpython-glade2アプリでXorgを実行します。

于 2012-11-13T14:31:48.673 に答える