Autohotkey 自动热键部分窗口标题匹配(无ahk类)

Autohotkey 自动热键部分窗口标题匹配(无ahk类),autohotkey,Autohotkey,我想将部分窗口标题匹配添加到#IfWinActive。 例如,要匹配任何记事本窗口,无论标题是“Untitled-notepad”还是“MyFile-notepad” 这应该很简单。我的尝试: SetTitleMatchMode, Regex SetTitleMatchMode, Slow #IfWinActive *.Notepad +n::b #IfWinActive 第二次尝试匹配模式2应匹配任何位置 SetTitleMatchMode, 2 #IfWinActive Notepad

我想将部分窗口标题匹配添加到#IfWinActive。 例如,要匹配任何记事本窗口,无论标题是“Untitled-notepad”还是“MyFile-notepad”

这应该很简单。我的尝试:

SetTitleMatchMode, Regex
SetTitleMatchMode, Slow

#IfWinActive *.Notepad
+n::b
#IfWinActive
第二次尝试匹配模式2应匹配任何位置

SetTitleMatchMode, 2
#IfWinActive Notepad
+n::b
#IfWinActive
使用完整标题Untitled-Notepad的测试确认代码+n::b确实将Shift-n替换为Shift-b

注意:ahk_类不是一个选项,因为目标程序TeXnicCenter的每台机器上的类都不同,因为我的第二个示例实际上是有效的,问题是我没有将SetTitleMatchMode放在脚本的最顶端


^的默认示例脚本!n
已生效并受到干扰。不太清楚它为什么会这样做,但将SetTitleMatchMode放在顶部解决了我的问题。

Nino,这就是脚本中的全部内容,还是还有更多内容。我这样问是因为你的第二个例子很贴切,也正是我使用它的方式。(就我个人而言,我喜欢在IfWinActive和记事本之间添加一个逗号,如下所示:IfWinActive,Notepad)。我假设您确实将SetTitleMatchMode,2放在了脚本的顶部。如果该行位于第一个返回的下方,则除非该行是脚本的一部分,否则不会读取和实现该行。
*。记事本
不是有效的正则表达式。您的意思是
*记事本
,即0个或更多字符后跟“记事本”。