这是一个应该可以工作的解决方案,我对其进行了一些测试,它应该 100% 的时间都可以工作。如果您使用它,请不要只是复制和粘贴,而是要尝试了解代码的作用。
基本上我们所做的是左键单击我们计时直到达到某个时间(在这种情况下为 1000 毫秒 -> IGNORE_TIME),同时我们忽略右键单击,当时间到时右键单击再次处于活动状态。
global IGNORE_TIME := 1000 ; ignore for 1000 miliseconds, change only this if you wan't different times
global starttime := 0
~LButton::
SetTimer, DelayRButton_r ,Off
starttime := 25
SetTimer, DelayRButton_r ,25
tooltip,leftbutton ; debug
return
RButton::
if(starttime > 0) ; if the left button was pressed IGNORE_TIME ago or less ignore right click
return
Send, {RButton} ; else send right click
tooltip,rightbutton ; debug
return
DelayRButton_r: ; this function runs every 25 ms until it reaches IGNORE_TIME then if sets starttime to 0 and rightclick works again
starttime += 25
if( starttime > IGNORE_TIME)
{
SetTimer,DelayRButton_r, Off
starttime := 0
}
return
另请记住,此代码可以轻松编辑为仅适用于特定应用程序/窗口。