Golang桌面自动化工具Robotgo v0.70.0发布,增强键盘鼠标操作功能

Golang桌面自动化工具Robotgo v0.70.0发布,增强键盘鼠标操作功能 Golang 桌面自动化。控制鼠标、键盘、位图、读取屏幕、窗口句柄和全局事件监听器。

Robotgo v0.70.0 已发布,Go 桌面自动化。增强的键盘和鼠标操作。

GitHub

go-vgo/robotgo

头像

RobotGo,Go 原生跨平台 GUI 自动化。通过创建 GitHub 帐户为 go-vgo/robotgo 开发做出贡献。


更多关于Golang桌面自动化工具Robotgo v0.70.0发布,增强键盘鼠标操作功能的实战教程也可以访问 https://www.itying.com/category-94-b0.html

1 回复

更多关于Golang桌面自动化工具Robotgo v0.70.0发布,增强键盘鼠标操作功能的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


Robotgo v0.70.0 的发布进一步强化了 Go 语言在桌面自动化领域的应用,特别是在键盘和鼠标操作方面。以下是一些关键功能的示例代码,展示如何使用新版本进行基本操作。

首先,确保安装最新版本:

go get github.com/go-vgo/robotgo@v0.70.0

鼠标操作示例

移动鼠标到屏幕坐标 (100, 200),并执行左键点击:

package main

import "github.com/go-vgo/robotgo"

func main() {
    robotgo.MoveMouse(100, 200) // 移动鼠标到指定位置
    robotgo.MouseClick("left", false) // 执行左键单击
}

键盘操作示例

模拟键盘输入,例如输入字符串 “Hello Robotgo” 并按下回车键:

package main

import "github.com/go-vgo/robotgo"

func main() {
    robotgo.TypeString("Hello Robotgo") // 输入字符串
    robotgo.KeyTap("enter") // 模拟按下回车键
}

屏幕读取和位图操作示例

获取屏幕截图并保存为位图文件,然后查找特定图像在屏幕上的位置:

package main

import "github.com/go-vgo/robotgo"

func main() {
    bitmap := robotgo.CaptureScreen(0, 0, 800, 600) // 截取屏幕区域
    robotgo.SaveBitmap(bitmap, "screen_capture.png") // 保存为PNG文件

    // 假设有一个图像文件 "button.png",查找它在屏幕上的位置
    fx, fy := robotgo.FindBitmap("button.png")
    if fx != -1 && fy != -1 {
        robotgo.MoveMouse(fx, fy) // 移动鼠标到找到的位置
    }
}

窗口句柄和事件监听示例

获取活动窗口的句柄并监听全局键盘事件:

package main

import (
    "fmt"
    "github.com/go-vgo/robotgo"
)

func main() {
    // 获取当前活动窗口的句柄
    hwnd := robotgo.GetActiveWindow()
    fmt.Printf("Active Window Handle: %d\n", hwnd)

    // 设置全局事件监听器,例如监听键盘按键
    robotgo.EventHook(robotgo.KeyDown, []string{}, func(e robotgo.Event) {
        if e.Keychar == 'a' { // 如果按下 'a' 键
            fmt.Println("Key 'a' pressed")
        }
    })

    // 启动事件监听循环
    robotgo.EventStart()
    defer robotgo.EventEnd() // 确保程序退出时停止监听

    // 保持程序运行以持续监听事件
    select {}
}

这些示例展示了 Robotgo v0.70.0 在鼠标移动、点击、键盘输入、屏幕截图、图像识别和事件监听方面的增强功能。实际使用时,请根据具体需求调整参数,并参考官方文档获取完整 API 列表。

回到顶部