首页 > 解决方案 > 按下 G 按钮时 Lua 移动鼠标

问题描述

我有一个小问题要问大师。请帮助我。我对 Lua 编码很陌生。请原谅我,也许这很容易,但我还没有找到任何解决方案。

我需要在按下鼠标的 G 按钮时移动鼠标光标。我正在使用罗技 G502,我为鼠标编写了这样的脚本;

在此处输入图像描述

它工作了一次。但我想在按下鼠标的第 8 个按钮时重复它。有人对此有想法吗?

标签: eventslualogitech-gaming-software

解决方案


OnEvent只会在按键和按键释放时触发一次,这就是为什么您没有看到您希望的代码循环。

您需要在OnEvent函数中启动一个循环。根据我发现的文档,您可以将该IsMouseButtonPressed函数用作循环条件。

function OnEvent(event, arg, mouse)
    if event == "MOUSE_BUTTON_PRESSED" and arg == 8 then
        while IsMouseButtonPressed(8) do -- This will check if the key is still pressed every loop
            MoveMouseRelative(0,20)
            MoveMouseRelative(0,20)
            MoveMouseRelative(0,20)
            sleep(50)
        end
    elseif event == "MOUSE_BUTTON_RELEASED" and arg == 8 then
        i_pressed = notok
        Sleep(50)
    end

    OutputLogMessage("event = %s, arg = %d, press = %s\n", event, arg, i_pressed)
    MoveMouseDown()
end 

我发现状态IsMouseButtonPressed不适用于按钮 6 或更高版本的评论,可能需要将按钮更改为 1-5 而不是 8。


推荐阅读