如何 close/minimize/maximize 或将键发送到 window 或使用 Autohotkey 弹出?
How to close/minimize/maximize or send keys to window or popup with Autohotkey?
如何使用 Autohotkey 在 window 弹出时自动关闭、最小化、最大化或发送按键?我可以检测到一个对话框并用这个关闭它:
WinWaitActive, TITLE
WinClose, TITLE
但是如果 window 在脚本执行时没有打开,这将不起作用。
这是 AHK 用于的非常常见的任务。
首先,您需要window 的标题。阅读 How to get the title of a window with AHK?.
密码
对于关闭 window 的基本功能,我们需要 Loop, WinWaitActive and WinClose。
打开 Stack Overflow 的 Firefox window 示例。
Loop {
WinWaitActive, Stack Overflow - Mozilla Firefox
WinClose,
}
说明
Loop
多次重复关闭 window 的过程。 WinWaitActive
等到 window 被激活(弹出)并且 WinClose
关闭它。
提示:如果您没有指定特定的 window 标题,例如 WindowClose
最后找到的 window,即来自 [=15] =]被使用。
minimize/maximize
代替WinClose
使用WinMaximize or WinMinimize执行相应的操作。
发送密钥
如果您想将特定键(例如 Enter)发送到 window,请使用 Send
Loop {
WinWaitActive, Stack Overflow - Mozilla Firefox
send {Enter}
}
增加
如果基本版本不起作用或者您想创建更高级的脚本,这里有一些可能的修改。
更多力量
如果 WinClose
不起作用,请尝试 WinKill 或 Send, !{F4}
使用更多的力量。
作为管理员
可能需要管理员权限才能关闭 window,在您的脚本之上使用此代码片段以确保它以完全访问权限运行。
If not A_IsAdmin ;force the script to run as admin
{
Run *RunAs "%A_ScriptFullPath%"
ExitApp
}
其他搭配方式
默认情况下,window 标题必须完全匹配。要更改此行为并允许 partial 或 start with 匹配,请在脚本顶部使用 SetTitleMatchMode,例如SetTitlematchMode, 2
部分匹配。
可以使用来自 Window 间谍的 window class (ahk_class) 或 .exe (ahk_exe) 而不是标题。
WinWaitActive, ahk_class MozillaWindowClass
或
WinWaitActive,ahk_exefirefox.exe
Select 仔细选择适合您的需求,只对正确的做出反应 window.
如何使用 Autohotkey 在 window 弹出时自动关闭、最小化、最大化或发送按键?我可以检测到一个对话框并用这个关闭它:
WinWaitActive, TITLE
WinClose, TITLE
但是如果 window 在脚本执行时没有打开,这将不起作用。
这是 AHK 用于的非常常见的任务。
首先,您需要window 的标题。阅读 How to get the title of a window with AHK?.
密码
对于关闭 window 的基本功能,我们需要 Loop, WinWaitActive and WinClose。
打开 Stack Overflow 的 Firefox window 示例。
Loop {
WinWaitActive, Stack Overflow - Mozilla Firefox
WinClose,
}
说明
Loop
多次重复关闭 window 的过程。 WinWaitActive
等到 window 被激活(弹出)并且 WinClose
关闭它。
提示:如果您没有指定特定的 window 标题,例如 WindowClose
最后找到的 window,即来自 [=15] =]被使用。
minimize/maximize
代替WinClose
使用WinMaximize or WinMinimize执行相应的操作。
发送密钥
如果您想将特定键(例如 Enter)发送到 window,请使用 Send
Loop {
WinWaitActive, Stack Overflow - Mozilla Firefox
send {Enter}
}
增加
如果基本版本不起作用或者您想创建更高级的脚本,这里有一些可能的修改。
更多力量
如果 WinClose
不起作用,请尝试 WinKill 或 Send, !{F4}
使用更多的力量。
作为管理员
可能需要管理员权限才能关闭 window,在您的脚本之上使用此代码片段以确保它以完全访问权限运行。
If not A_IsAdmin ;force the script to run as admin
{
Run *RunAs "%A_ScriptFullPath%"
ExitApp
}
其他搭配方式
默认情况下,window 标题必须完全匹配。要更改此行为并允许 partial 或 start with 匹配,请在脚本顶部使用 SetTitleMatchMode,例如SetTitlematchMode, 2
部分匹配。
可以使用来自 Window 间谍的 window class (ahk_class) 或 .exe (ahk_exe) 而不是标题。
WinWaitActive, ahk_class MozillaWindowClass
或 WinWaitActive,ahk_exefirefox.exe
Select 仔细选择适合您的需求,只对正确的做出反应 window.