首页 > 解决方案 > 为什么当我运行应用程序时它只是跳过一些 ifs

问题描述

正如我所说的粗体文本不起作用,它只是跳过它(它没有那些 ifs 工作)你能帮我吗?拜托,我做了几个小时,但它仍然不起作用。如果不在此循环中,我尝试添加它并且它有效,请帮帮我,我花了很多时间;(

Gui, Add, CheckBox, x405 y317 w15 h15 vwyrzucaniediax gZapisz,
Gui, Show, h500 w800, Skrypt Na Kopanie
Return

Zapisz:
Gui, Submit , NoHide
return

F8::
WinMove, Minecraft, , , , 1280, 720
sleep 1000
Loop
{
    if poziome
    {

    }

    if pionowe
    {

    }

    Checker()
}



Checker()
{
    x := 503
    y := 385
    l := 0
    i := 0
    Send e
    loop, 27{
    if(i = 9){
    i := 0
    l++
    }
    Sleep 100
    MouseMove, x +36*i, y + 36*l

    **if wyrzucaniediax // all strong text is just skipped idk why
    {
        Dropdiax()
    }
    **

    i++
    }
    Send e
    Sleep 50
}

dropdiax(){
    diaxcolor := 0x80ĄFFE
    color:= getColor()
    if(color == diaxcolor){
        Send {LCtrl down}
        Send q
        Sleep 50
        Send {LCtrl up}
    }
}```

标签: autohotkey

解决方案


您的wyrzucaniediax变量(也许您在寻求帮助时可以使用更好的变量名称?)未在该函数的范围内定义。
要告诉函数您正在使用其范围之外的变量,您可以使用Global关键字。

Checker()
{
    global wyrzucaniediax 
    x := 503
    y := 385
    l := 0

推荐阅读