AutoHotKey SendInput 仅一次

问题描述 投票:0回答:1

你好,我正在制作一个禁用麦克风、扬声器和摄像头的程序。但是当我按下“o”按钮时,程序会不停地按制表符和空格键。我希望程序只在按下键时运行一次。

代码:

~*o::
SoundSet, +1, MASTER, mute,3 
SoundGet, master_mute, , mute, 3
ToolTip, Mute %master_mute% 
SetTimer, RemoveToolTip, 3000 
send {Volume_Mute}

RemoveToolTip: 
ToolTip
SendInput, {Tab}{Tab}{Tab}{Tab Up} 
SendInput, {Space}{Space Up}
Click, A_ScreenWidth/2, A_ScreenHeight/2
return

#x::Reload
autohotkey
1个回答
0
投票

执行多行的热键必须以 Return 结束。 Return 停止热键标签的代码执行(换句话说,结束热键的代码)。

~*o::
SoundSet, +1, MASTER, mute,3 
SoundGet, master_mute, , mute, 3
ToolTip, Mute %master_mute% 
SetTimer, RemoveToolTip, 3000 
send {Volume_Mute}
Return

RemoveToolTip: 
ToolTip
SendInput, {Tab 4}{Space 2}
Click, A_ScreenWidth/2, A_ScreenHeight/2
return

#x::Reload
© www.soinside.com 2019 - 2024. All rights reserved.