Robotgoで自動操作できる内容をまとめました。
使用バージョン
- Golang1.17
- robotgo v0.100.10
マウスの操作
指定座標にマウスカーソルを移動する
画面左上を座標x,yを0としたときに、x座標の200、y座標の300に移動したときは
Moveを使用します。座標に瞬時にマウスカーソルを移動します。
ゆっくりとマウスカーソルを移動したいときはMoveSmoothを使用します。
1 2 |
robotgo.Move(200, 300) robotgo.MoveSmooth(200, 300) |
現在のマウスカーソルの位置から相対的な位置に移動したいときはMoveRelativeを利用します。
MoveSmoothRelativeだとゆっくりとマウスカーソルを移動ます。
1 2 |
robotgo.MoveRelative(100, 50) //マウスカーソルの位置から右下x100,y50の位置に移動 robotgo.MoveSmoothRelative(100, 50) |
指定座標にドラッグする
マウスを入力した座標にドラッグしたいときは、DragSmoothを使用します。
入力した座標にゆっくりとマウスをドラッグします。
1 |
robotgo.DragSmooth(100, 50) |
マウスカーソルの座標を取得する
マウスカーソルの座標を取得したいときは、GetMousePosを使用します。
1 2 |
x, y := robotgo.GetMousePos() fmt.Println(x, y) |
現在のマウスカーソルの位置から引数で入力した相対的な位置を取得したい場合は
MoveArgsを使用します。
現在のマウスカーソルの位置から右下にx100,y50の位置を取得したい場合は以下のコードになります。
1 2 |
x, y := robotgo.MoveArgs(100, 50) fmt.Println(x, y) |
マウスをクリックする
マウスを左クリックしたいときは、Click()を使用します。
1 |
robotgo.Click() |
左クリック以外を行いたいときは1番目の引数に文字列を渡します。
1 2 3 4 5 6 7 8 9 10 |
robotgo.Click("right") //右クリック // クリックで使える種類 // "left" // "center" // "right" // "wheelDown" // "wheelUp" // "wheelLeft" // "wheelRight" |
ダブルクリックしたいときは、2番目にtrueを渡します。
1 2 |
// 左ダブルクリック robotgo.Click("left", true) |
マウスのボタンを押しっぱなしにする
マウスのボタンを押しっぱなしにしたい動作はToggleを使用します。
1 |
robotgo.Toggle("left") |
マウススクロールを実行したい
マウスのスクロールを実行したいときは、Scrollを使用します。
マウスホイールのスクロール量を利用してスクロールを行います。
下に向かってスクロールを行いたい場合は2番目の引数にマイナスを入力します。
1 2 |
// 下方向にマウスホイール10スクロール量分スクロールを行いたい場合は2番目の引数にマイナス10を入力 robotgo.Scroll(0, -10) |
キーボード操作
文字列の自動入力
文字列を入力するにはTypeStrを使用します。
1 2 |
// 引数の文字列を入力する robotgo.TypeStr("abcd") |
特定のキーを入力する
キーボードの特定のキーを入力したいときはKeyTapを使用します。
利用できるキー一覧は下記のmdファイルに一覧化されています。
https://github.com/go-vgo/robotgo/blob/master/docs/keys.md
1 2 |
// Enterをキーボードで入力する robotgo.KeyTap("enter") |
クリップボード操作
クリップボード書き込み、読み込み
1 2 3 4 5 6 7 8 9 10 11 |
// クリップボードに値を書き込み後、書き込んだ値を読み込み // 読み込んだ文字列を入力する err := robotgo.WriteAll("クリップボードに値を書き込み") // クリップボードに値を書き込み if err != nil { log.Fatal(err) } clipStr, err := robotgo.ReadAll() // クリップボードから値を読み込み if err != nil { log.Fatal(err) } robotgo.TypeStr(clipStr) //読み込んだ値を入力 |
Robotgoサンプル
マウスの座標位置をスライスに記録して、記録した座標位置に一定の間隔でマウスポインタを
移動します。

コメント