◇ マクロ実行中にクリックした位置を記憶させて、次回のマクロ実行時に、マウスカーソルをその位置へ動かしたい
Q:時々、クリックしたいボタンの位置が変わる(しかしたいていは変わらない) Web ページがあります。その対策として、マクロ実行中にクリックした位置を記憶させて、次回のマクロ実行時に、マウスカーソルをその位置へ動かしたいのですが、どうすればいいでしょう。
A:クリックした位置をファイルに保存しておけば、それを次回の実行時に読み出し、その位置へカーソルを動かすことができます。
データの保存・読み出しは、saveini・loadini を使うのが簡単です。
set %0 (loadini pos) ; 前回クリックした位置を、ini ファイルの「pos」キーから呼び出し
if (= %0 "") set %0 "100,100" ; 記録がなければ、とりあえず (100,100) に設定
moveto %0 ; 前回クリック位置へカーソル移動
(message "クリックする位置にカーソルを移動してください") ; ボタンの位置がずれていれば、メッセージボックスに「はい」をする前に、カーソルを動かす
saveini pos (getmouse) ; クリック位置を ini ファイルの pos キーに保存
key [LCLICK] ; クリック実行
saveini コマンドは、「マクロのファイル名.INI」という名前の INI ファイルの「SAVEINI」セクションに値を保存します。
なお、常駐モードでは saveini コマンドは使えませんので、writeini コマンドの方を使ってください。