【发布时间】:2020-10-22 04:10:44
【问题描述】:
我正在尝试设置一个热键以始终启动一个新的 WindowsTerminal 窗口并为其提供焦点。即使有一个现有的窗口,我也总是希望它创建一个新窗口。我可以让新窗口运行,但我很难将其设为活动窗口。
在 Run 命令期间捕获 pid 并使用 ahk_pid 似乎不起作用,因为 pid 在启动和出现的活动窗口之间发生变化(msgbox 调试显示一个 pid,Window Spy 显示一个不同的 pid)。使用WinWait, ahk_exe WindowsTerminal.exe 似乎会立即返回并抓住一个预先存在的窗口。
#t::
Run, wt.exe, , , TermPid
;; TermPid seems to change between the launch and the final window that appears
WinWait, ahk_pid %TermPid%, , 3
if ErrorLevel {
MsgBox, WinWait timed out... %TermPid%
return
} else {
WinActivate
}
;; problems when there are other already existing WindowsTerminal.exe windows
;WinWait, ahk_exe WindowsTerminal.exe, , 3
;if ErrorLevel {
; MsgBox, WinWait timed out...
; return
;} else {
; WinActivate
;}
return
【问题讨论】:
标签: autohotkey