2017-11-20 10 views
2

ウェブカムと一緒に描画タブレットとして使用しているレーザーポインタがありますが、余分なボタンも使用したいと思います。 Page Up、Page Down、Escape、およびPeriodにバインドされているようです。私は選択されているウィンドウを持たずに入力(キーボードのように扱われる)を得る方法を見つけることができないようです。Pythonでライブキーボード入力?

私はシリアルとpyusbを試しましたが、私はそれらの両方に問題がありました。私はそれをPygameで動作させるようにしましたが、私が知る限り、それが作成されたウィンドウが選択されていなければ、入力を受け取ることはできません。何か案は?

+0

これはテストしていませんが、ウィンドウがあればSDL2と[this](https://wiki.libsdl.org/)のような新しい機能を試してみるといいでしょう。 SDL_SetWindowInputFocus)ウィンドウにフォーカスを強制します。ただし、その機能はX11でのみサポートされています。また、ウィンドウのフォーカスを強制する方法としてウィンドウを上げてみることもできます。 – CodeSurgeon

+0

@codesurgeon私はGIMPで描画するための設定を使用しているので、別のウィンドウにフォーカスを当てることはできません。 – CMLSC

+0

GIMPを実行しているプラ​​ットフォームは何ですか? X11を使用する場合は、 'python-xlib'のような低レベルのものを使用してキーロガーにキーイベントをキャプチャして送信させることができます。 – CodeSurgeon

答えて

0

CodeSurgeonさんがコメントで私に答えました。

Looks like there are a lot of youtube tutorials on the subject, surprisingly. This one shows a cross-platform approach using the pynput module, while this one looks to be using a windows-specific approach (pyhook and pythoncom). Can't vouch for either of these as I just found them through some searching, and I am sure there are others as well.

私が見つけたのはpynputです。 (Windows 10/Python 3.4)

0

あなたはpythonキーロガーを作ってみることができます。ただし、Pygameを使用する方がずっと簡単です。

+0

私はキーロガーを作ろうとしているので、[here](https://sourceforge.net/projects/pyhook/)からpyHookを入手しました。 pyHookをインポートしようとすると、私は 'ImportError:DLL load failed:%1は有効なWin32アプリケーションではありません。 'というメッセージが表示されます。 – CMLSC

+0

Windowsを使用しているようです。私の経験上、Python用の外部パッケージを入手することは、Windowsを使用している場合には本当に苦しいものになる可能性があります。これが見つかりました:https://stackoverflow.com/questions/14629818/importerror-dll-load-failed-1-is-not-a-valid-win32-application – Tiskolin