【问题标题】:How to program a toggle macro in LUA for Logitech Mouse button如何在 LUA 中为 Logitech 鼠标按钮编写切换宏
【发布时间】:2021-01-23 03:29:48
【问题描述】:

我是 Lua 语言的新手,只想为 Logitech 鼠标按钮编写一个宏,所需的操作是:按下按钮启动并连续循环宏,直到我再次按下按钮将其关闭。

我知道类似的问题已发布为: Lua handling mouse event 。但是我很难运行他们的示例代码。有两个问题: 1,我可以通过按下按钮 5 来启动循环,但只有按住按钮 5 才能继续 while 循环。如何设置 while 循环只需按一下然后释放即可继续? 2、再按5号键,重复循环不能断。它仍然继续运行。

我也试过这段代码

script_running = false
function OnEvent(event, arg)
    if event == "MOUSE_BUTTON_PRESSED" and arg == 5 then
        if script_running then
            script_running = false
            return
        else
            script_running = true
        end
        repeat
            OutputLogMessage("repeat\n")
            Sleep(3000)
        until not script_running
        OutputLogMessage("end\n")
    end
end

重复循环仍然无法停止。

有人可以给出一些成熟的代码示例吗?非常感谢。

【问题讨论】:

    标签: lua macros mouseevent logitech logitech-gaming-software


    【解决方案1】:
    local flag
    
    function OnEvent(event, arg)
       if event == "MOUSE_BUTTON_PRESSED" and arg == 5 then
          flag = not flag
          if flag then
             repeat
                -----------------------
                -- your actions here 
                OutputLogMessage("repeat\n")
                Sleep(1000)
                -----------------------
                Sleep(15)
                local prev_flag = flag
                flag = IsMouseButtonPressed(5)
             until not prev_flag and flag
          end
       end
    end
    

    【讨论】:

      猜你喜欢
      • 2023-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-04
      • 2021-11-02
      • 2020-03-10
      • 1970-01-01
      相关资源
      最近更新 更多