【发布时间】:2012-02-25 07:03:52
【问题描述】:
我编写了这个简短的测试代码,但它不起作用。我做错了什么?
F12::
WinGetTitle, Title, A ;
MsgBox, "%Title%"
显示的结果是“”
【问题讨论】:
-
您只需要在
;前面留一个空格,它就可以工作,而没有;的空格作为窗口标题的一部分
标签: autohotkey
我编写了这个简短的测试代码,但它不起作用。我做错了什么?
F12::
WinGetTitle, Title, A ;
MsgBox, "%Title%"
显示的结果是“”
【问题讨论】:
; 前面留一个空格,它就可以工作,而没有; 的空格作为窗口标题的一部分
标签: autohotkey
我删除了一个 ;并添加了回报,这很有效......
F12::
WinGetTitle, title, A
MsgBox, "%title%"
return
【讨论】:
最佳实践可能是使用WinGetActiveTitle:
F12::
WinGetActiveTitle, Title
MsgBox, The active window is "%Title%".
return
【讨论】:
如果您不输入退货,它将耗尽您的整个文件。
可能有些东西在后面没有贯穿。
别以为 ;会影响的。
任何之后 a ;作为注释从代码中省略。
【讨论】:
使用 WinGetActiveTitle 或 WinGetTitle 即可。 请注意 WinGetTitle 的输出包含的不仅仅是窗口标题。 您可能希望删除程序名称的结尾部分,例如“- Google Chrome”。
WinGetActiveTitle, Title
StringGetPos,pos,Title,%A_space%-,R
if (pos != -1)
Title := SubStr(Title,1,pos)
【讨论】:
在 AutoHotKey 2 中你可以使用这个:
title := WinGetTitle("A") ; "A" matches "Active" window
在 AutoHotKey 1 中你可以使用:
WinGetActiveTitle, title
【讨论】: