Как исправить «если заявление» всегда происходит для «еще» - PullRequest
0 голосов
/ 30 марта 2019

У меня есть очень простое утверждение IfEqual, которое всегда идет к 'else'

Я пытался сделать это с помощью оператора «If», например «If% GuiText1% = Var1» и «If (GuiText1 = Var1)», но получил тот же результат

Gui, Add, Button, x25 y8 cBlue vSA , Var1
Gui, Add, Button, x20 y8 cRed vSD , Var2
GuiControl, Hide, SD
Gui,Show

{
ControlGetText, GuiText1,, new.ahk    //to get the button-text from the window
msgbox, %GuiText1%    //to check if its the right variable
IfEqual, %GuiText1%, Var1
        {
        msgbox, 1
        }
    else
        {
        msgbox, 2
        }
}

Это всегда идет прямо к «другому»

1 Ответ

1 голос
/ 30 марта 2019

Имена переменных в выражении не заключены в знаки процента.

IfEqual, GuiText1, Var1  

IfEqual устарело и не рекомендуется для использования в новых сценариях. Вместо этого используйте If Statement :

If GuiText1 = Var1   ; traditional mode

или, еще лучше

If (GuiText1 = "Var1")   ; expressional mode 
...