GTK+を使用して構築したアプリケーションがあります。このアプリは非常にシンプルなインターフェイスを持っています。起動後、常にいくつかの入力コントロールを含む同じウィンドウが開きます。
複数のフィールドにテキストを入力し、チェックボックスをオンにしてボタンをクリックするスクリプトを作成しようとしています。非常にシンプルで、アプリケーションのコマンドラインバージョンが利用可能であれば、これは簡単です(ただしそうではありません)。
プログラムでXアプリケーションと対話する最良の方法は何ですか?
答え1
xdotool提供(Ubuntuのマニュアルページ)一度見てください。
非常に強力で、必要なすべての作業を実行できるはずです。
答え2
xte
、部分自動化XTest拡張機能を使用して偽のX11入力を生成するもう1つのツールです。
ホームページから:
スクリプトのコマンドラインでXを制御し、「ビジュアルキャッチ」を実行して画面上のコンテンツを見つけます。コントロールインターフェイスはマウスの移動、クリック、ボタンの上/下、キウイ/下などを許可し、XTest拡張を使用するため、アプリケーションが送信されるイベントを無視するときにxseが実行する迷惑な問題はありません。 visgrepプログラムは画像内で画像を見つけて座標を報告するので、プログラムが画面上でクリックするボタンなどを見つけることができます。
答え3
Xteは動作しますが、本当に古いです。 xdotoolは少なくとも活発に開発中です。
私は、文字列を入力できるキーボードマクロプログラム、または一般的に貼り付けることができないアプリケーションのクリップボードを開発するために、X Windowsイベントの生成について多くの研究を行いました。
X Windowイベント処理に関する注意事項... https://antofthy.gitlab.io/info/X/event_handling.txt
キーボードマクロ(xteまたはxdotoolを使用) https://antofthy.gitlab.io/software/#keyboard_macro