Logitech脚本帮助-左键切换

我正在尝试修复我的脚本,因此当我按下鼠标按钮4时,它会切换按下左键鼠标按钮,如果我在切换期间按下左鼠标按钮,则会单击然后继续按住左鼠标按钮,除非我使用鼠标按钮4切换它。

切换按钮=4-哪个鼠标按钮应控制切换
按钮要切换的按钮=1-要切换的鼠标按钮
toggle=false
EnablePrimaryMouseButtonEvents(truefunction OnEventeventargifevent ==“MOUSE_BUTTON_PRESSEDand arg == toggle_buttonthen 
 toggle = not toggle 
 OutputLogMessage(“Moused切换%s \ n”,button_to_toggletostringtoggle))
 elseif切换和(事件 ==“MOUSE_BUTTON_PRESSEDand arg == 1)then 
 OutputLogMessage(“Mouse 1 pressed \ n”)
按下并释放鼠标按钮(1)
 elseif切换那么
按下鼠标按钮(button_to_toggle)
 else
 ReleaseMouseButton(button_to_toggle)
 end 
 end 

因为某种原因,我的脚本有些正常工作。切换期间的左键鼠标按钮只会有时起作用,但大多数情况下不会重新启用鼠标1切换。该怎么清理和修复我的脚本?

点赞
用户1847592
用户1847592

步骤 1.

你即将修改鼠标左键的行为。

这是一个潜在的危险操作:几乎没有左键,你的电脑上几乎不能做任何事情。

因此,你必须创建一个"备用左键"。

例如,如果你不使用鼠标按钮 8,则可以将其设置为克隆 LMB 的行为。

进入 LGS 中的大号鼠标图片,并将"左键单击"指令分配给物理 MB#8。

现在,如果发生故障并且你的 LMB 停止工作,你可以按 MB#8 而不是 LMB。


步骤 2.

进入 LGS 中的大号鼠标图片。

取消分配物理 MB#1 的标准指令"左键单击"(从下拉菜单中选择"取消分配")。

你会看到一个关于潜在危险操作的警告。

允许此操作,因为如果出现故障,你有"备用左键"。


步骤 3.

你的 MB#1 现在不工作(直到你保存脚本),所以在 LGS GUI 中使用 MB#8 代替 MB#1。

设置脚本:

local pressed

function OnEvent(event, arg)
   if event == "PROFILE_ACTIVATED" then
      EnablePrimaryMouseButtonEvents(true)
   elseif event == "PROFILE_DEACTIVATED" then
      ReleaseMouseButton(1)
   elseif event == "MOUSE_BUTTON_PRESSED" and arg == 4
   or (event == "MOUSE_BUTTON_PRESSED" or event == "MOUSE_BUTTON_RELEASED") and arg == 1 then
      pressed = not pressed
      ;(pressed and PressMouseButton or ReleaseMouseButton)(1)
   end
end
2021-08-02 07:53:35