Compiler errors 复合if语句的自动热键在同一行上阻塞大括号
我有一个问题,自动热键告诉我在“else”前面有一个缺失的Compiler errors 复合if语句的自动热键在同一行上阻塞大括号,compiler-errors,autohotkey,curly-braces,Compiler Errors,Autohotkey,Curly Braces,我有一个问题,自动热键告诉我在“else”前面有一个缺失的{,我认为我的代码非常好。(直到我将窗口相关的if从Pidgin更改为qutIM) 我担心我忽略了一些愚蠢的事情,但我似乎无法让它正常工作。如果我没有弄错的话,一个真正的大括号样式只能用于纯If语句,而不能用于IfWinExist这样的复合语句 : 一个真正的大括号(OTB)样式可以选择与 如果语句是表达式(但不是传统的 if语句) 你必须使用WinExist()形式,而不是IfWinExist。如果我没有弄错的话,一个真正的大括号样式只
{
,我认为我的代码非常好。(直到我将窗口相关的if从Pidgin更改为qutIM)
我担心我忽略了一些愚蠢的事情,但我似乎无法让它正常工作。如果我没有弄错的话,一个真正的大括号样式只能用于纯If语句,而不能用于IfWinExist这样的复合语句 : 一个真正的大括号(OTB)样式可以选择与 如果语句是表达式(但不是传统的 if语句)
你必须使用WinExist()形式,而不是IfWinExist。如果我没有弄错的话,一个真正的大括号样式只能用于纯If语句,不能用于像IfWinExist这样的复合词 : 一个真正的大括号(OTB)样式可以选择与 如果语句是表达式(但不是传统的 if语句)
例如,您必须使用WinExist()表单,而不是IfWinExist。由于我没有您正在测试的应用程序,我不确定您想让它做什么,但这可能是另一种方法:
^!p::
IfWinExist, ahk_class Notepad ; if there is a qutIM-window other than the buddy-list
{
WinActivate
Exists=True
}
else ;the closing bracket in front of the else here puts AHK off...
{
WinMinimize
Exists=False
}
If Exists=True
MsgBox, do some stuff with the buddy-list ; dummy code
Else
{
Msgbox, Exiting App ; dummy code
ExitApp
}
由于我没有你正在测试的应用程序,我不确定你想让它做什么,但这可能是另一种方式:
^!p::
IfWinExist, ahk_class Notepad ; if there is a qutIM-window other than the buddy-list
{
WinActivate
Exists=True
}
else ;the closing bracket in front of the else here puts AHK off...
{
WinMinimize
Exists=False
}
If Exists=True
MsgBox, do some stuff with the buddy-list ; dummy code
Else
{
Msgbox, Exiting App ; dummy code
ExitApp
}
,一个真大括号(OTB)样式不能与复合if语句一起使用
虽然没有用于WinNotActive()
的直接函数,但您可以使用!
作为修改器以获得相同的效果
^!p::
if WinExist("ahk_class QWidget", , "qutIM") {
if !WinActive("ahk_class QWidget", , "qutIM") {
WinActivate
} else {
WinMinimize
}
} else {
; [...]
}
return
,一个真大括号(OTB)样式不能与复合if语句一起使用
虽然没有用于WinNotActive()
的直接函数,但您可以使用!
作为修改器以获得相同的效果
^!p::
if WinExist("ahk_class QWidget", , "qutIM") {
if !WinActive("ahk_class QWidget", , "qutIM") {
WinActivate
} else {
WinMinimize
}
} else {
; [...]
}
return
非常感谢,这是我问题的解决方案(但我仍然想知道为什么它在o.o.之前有效)@StevenVascellaro显然,你回答了自己的问题,这是一件好事…:-)非常感谢,这是我问题的解决方案(但我仍然想知道为什么它在o.o.之前有效)@StevenVascellaro显然,你回答了自己的问题,这是一件好事…:-)这是关于打开/隐藏多窗口即时通讯客户端的聊天窗口…正如PhiLho指出的,我只是对我的if使用了错误的符号,但无论如何,谢谢;)这是关于打开/隐藏多窗口即时通讯客户端的聊天窗口…如PhiLh所说o pointet指出,我只是对我的if使用了错误的符号,但无论如何,谢谢;)