mirror of
https://github.com/go-vgo/robotgo.git
synced 2025-06-01 14:43:55 +00:00
11 KiB
11 KiB
方法:
GetVersion
键盘
Keys
SetKeyboardDelay (相当于 SetKeyDelay, 废弃 API)
SetKeyDelay
KeyTap
KeyToggle
TypeString
TypeStringDelayed (相当于 TypeStrDelay, 废弃 API)
TypeStrDelay
鼠标
SetMouseDelay
MoveMouse
Move (相当于 MoveMouse)
MoveMouseSmooth
MoveSmooth (相当与 MoveMouseSmooth)
MouseClick
Click (相当于 MouseClick)
MoveClick
MouseToggle
DragMouse
Drag (相当于 DragMouse)
GetMousePos
ScrollMouse
.GetVersion()
获取 robotgo 版本
屏幕
GetPixelColor
GetScreenSize
CaptureScreen
GetXDisplayName(Linux)
SetXDisplayName(Linux)
位图
This is a work in progress. (工作正在进行中)
FindBitmap
OpenBitmap
SaveBitmap
TostringBitmap
GetPortion
Convert
事件
LEvent (相当于 AddEvent, 废弃 API)
AddEvent
StopEvent
窗口
This is a work in progress.
ShowAlert
CloseWindow
IsValid
SetActive
GetActive
SetHandle
GetHandle
GetBHandle
GetTitle
GetPID
键盘
.SetKeyDelay(ms)
设置键盘延迟 (在键盘一个事件后), 单位 ms, 默认值 10ms
Sets the delay in milliseconds to sleep after a keyboard event. This is 10ms by default.
参数:
延迟时间,单位 ms
ms - Time to sleep in milliseconds.
.KeyTap(key, modifier)
模拟键盘按键
Press a single key.
参数:
键盘值
修饰值 (可选类型, 字符串或者数组) - 可选值: alt, command (win), control, and shift.
key - See keys.
modifier (optional, string or array) - Accepts alt, command (win), control, and shift.
示例:
robotgo.KeyTap("h", "command")
robotgo.KeyTap("i", "alt", "command")
arr := []string{"alt", "command"}
robotgo.KeyTap("i", arr)
.KeyToggle(key, down, modifier)
键盘切换, 按住或释放一个键位
Hold down or release a key.
参数:
key - See keys.
down - Accepts 'down' or 'up'.
modifier (optional, string or array) - Accepts alt, command (mac), control, and shift.
返回值:
返回 KeyToggle 状态
.TypeString(string)
参数:
string - The string to send.
.TypeStrDelay(string, cpm)
参数:
string - The string to send.
cpm - Characters per minute.
鼠标
.SetMouseDelay(ms)
设置鼠标延迟 (在一个鼠标事件后),单位 ms, 默认值 10 ms
Sets the delay in milliseconds to sleep after a mouse event. This is 10ms by default.
参数:
ms - Time to sleep in milliseconds.
.MoveMouse(x, y)
移动鼠标
Moves mouse to x, y instantly, with the mouse button up.
参数:
x, y
示例:
// Move the mouse to 100, 100 on the screen.
robotgo.MoveMouse(100, 100)
.MoveMouseSmooth(x, y)
模拟鼠标向 X,Y 平滑移动(像人类一样),用鼠标按钮向上
Moves mouse to x, y human like, with the mouse button up.
参数:
x, y
lowspeed, highspeed
示例:
robotgo.MoveMouseSmooth(100, 200)
robotgo.MoveMouseSmooth(100, 200, 1.0, 100.0)
.MouseClick(button, double)
鼠标点击
Clicks the mouse.
参数:
button (optional) - Accepts left, right, or center. Defaults to left.
double (optional) - Set to true to perform a double click. Defaults to false.
示例:
robogo.MouseClick()
robogo.MouseClick("left", true)
.MoveClick(x, y, button, double)
移动并点击鼠标
参数:
x,
y,
button (optional) - Accepts "left", "right", or "center". Defaults to left.
double (optional) - Set to true to perform a double click. Defaults to false.
示例:
robogo.MoveClick(10, 20)
robogo.MoveClick(10, 20, "left", true)
.MouseToggle(down, button)
鼠标切换
Toggles mouse button.
参数:
down (optional) - Accepts down or up. Defaults to down.
button (optional) - Accepts "left", "right", or "center". Defaults to left.
示例:
robotgo.MouseToggle("down")
robotgo.MouseToggle("down", "right")
.DragMouse(x, y)
拖动鼠标
Moves mouse to x, y instantly, with the mouse button held down.
参数:
x, y
示例:
// Mouse down at 0, 0 and then drag to 100, 100 and release.
robotgo.MoveMouse(0, 0)
robotgo.MouseToggle("down")
robotgo.DragMouse(100, 100)
robotgo.MouseToggle("up")
.GetMousePos()
获取鼠标的位置
Gets the mouse coordinates.
返回值:
Returns an object with keys x and y.
示例:
x, y := robotgo.GetMousePos()
fmt.Println("pos:", x, y)
.ScrollMouse(magnitude, direction)
滚动鼠标
Scrolls the mouse either up or down.
参数:
滚动位置的大小
滚动方向: up (向上滚动) down (向下滚动)
magnitude - The amount to scroll.
direction - Accepts down or up.
示例:
robotgo.ScrollMouse(50, "up")
robotgo.ScrollMouse(50, "down")
屏幕
.GetPixelColor(x, y)
获取坐标为 x, y 位置处的颜色
Gets the pixel color at x, y. This function is perfect for getting a pixel or two, but if you'll be reading large portions of the screen use screen.capture.
参数:
x, y
返回值:
Returns the hex color code of the pixel at x, y.
.GetScreenSize()
获取屏幕大小
Gets the screen width and height.
返回值:
Returns an object with .width and .height.
.CaptureScreen
// CaptureScreen
获取部分或者全部屏幕
Gets part or all of the screen.
BCaptureScreen Returns a go struct
Capture_Screen (Drop support)
参数:
x (optional)
y (optional)
height (optional)
width (optional)
If no arguments are provided, screen.capture will get the full screen.
返回值:
返回一个 bitmap object.
位图
This is a work in progress.
.FindBitmap
查找 bitmap.
参数:
bitmap;
rect (可选参数): x, y, w, h
Return:
查找到, 返回 bitmap 的 x 和y 坐标; 没有返回 nil
.OpenBitmap
打开 bitmap 图片.
参数:
bitmap 图片路径,
MMImageType (可选)
返回值:
返回一个 bitmap 对象
.SaveBitmap
保存一个 bitmap 图片.
参数:
bitmap 对象,
保存路径,
imagetype (int)
返回值:
保存图片, 返回保存状态
.TostringBitmap
将一个 bitmap 对象转换为字符串对象.
参数:
bitmap 对象
Return:
返回一个 bitmap 字符串
.GetPortion
bitmap from a portion
参数:
bitmap,
rect: x, y, w, h
返回值:
Returns new bitmap object created from a portion of another
.Convert(openpath, savepath,MMImageType)
转换 bitmap 图片格式
参数:
openpath,
savepath,
MMImageType (可选)
示例:
robotgo.Convert("test.png", "test.tif")
##
事件
.AddEvent(string)
监听全局事件
参数:
string
(鼠标参数: mleft, mright, wheelDown, wheelUp, wheelLeft, wheelRight)
返回值:
监听成功返回 0
示例:
package main
import (
"fmt"
"github.com/go-vgo/robotgo"
)
func main() {
keve := robotgo.AddEvent("k")
if keve == 0 {
fmt.Println("you press...", "k")
}
mleft := robotgo.AddEvent("mleft")
if mleft == 0 {
fmt.Println("you press...", "mouse left button")
}
}
.StopEvent()
停止事件监听
窗口
.ShowAlert(title, msg,defaultButton,cancelButton string)
Displays alert with the given attributes. If cancelButton is not given, only the defaultButton is displayed
参数:
title (string),
msg (string),
defaultButton (optional string),
cancelButton (optional string)
返回值:
Returns 0 (True) if the default button was pressed, or 1 (False) if cancelled.
.CloseWindow()
关闭窗口
参数:
无
返回值:
无
.IsValid()
Valid the Window
参数:
无
返回值:
如果窗口 selected 返回 true
.SetActive()
设为当前窗口
参数:
hwnd
返回值:
void
.GetActive()
获取当前窗口
参数:
无
返回值:
Returns hwnd
.SetHandle()
Set the Window Handle
参数:
int
返回值:
bool
.GetHandle()
获取窗口 Handle
参数:
无
返回值:
Returns hwnd
.GetTitle()
获取窗口标题
参数:
返回值:
返回窗口标题
.GetPID()
获取进程 id
参数:
无
返回值:
返回进程 id