Button per Function "drücken"

  • Hey,
    ist es möglich einen Button durch eine Function zu "drücken" ?

    z.b.
    es gibt 5 Button ( benannt in array - $aTestButton[1, 2, 3...])
    ich generiere eine randomzahl 1-5

    Func
    For $i = 1 to 5
    If $randomzahl = $i Then (Press) $aTestButton[$i]
    next
    Endfunc

    mfg

  • Ich glaube schon, dass es möglich ist. Siehe ControlClick(). Aber wozu soll das denn gut sein? Kann mir keinen sinnvollen Einsatz deines Vorhabens vorstellen.

    Sicher will er aus dieser Vorlage:

    eine KI für Tic Tac Toe entwickeln. Der 1. Zug soll aber zufällig sein.

  • genau das ist der plan autobert ;)

    hast du eine idee, wie man das machen kann, dass autoit nachdem ich einen button geklickt habe, automatisch einen andere button "drückt" ?

    kann man nicht einfach sagen "Click $Button1" ?

  • durch das drücken von button werden auch noch unterschiedliche zahlen generiert für spätere funktionen, dadurch kann ich nicht einfach alles aus dem Case $button1 kopieren.

    habe es glaube ich hinbekommen mit einer For schleife. ich teste es noch ein bisschen, wenn keine fehler auftreten mach ich das thema zu.

    vielen dank für eure mühe :)

  • hast du eine idee, wie man das machen kann, dass autoit nachdem ich einen button geklickt habe, automatisch einen andere button "drückt" ?

    in meinem Beispiel einfach kannst du mit

    AutoIt
    _click(Random(0,8,1),Random(0,1,1))


    einen zufälligen Klick erzeugen und falls das Feld noch nicht besetzt war, wird sogar zufällig die Farbe (rot/grün) zufällig gesetzt.
    Falls du wirklich Tic Tac Toe programmieren willst einfach die Func _click so erweitern, daß bei bereits besetzte Felder eine Fehlermeldung kommt und den 2. Random immer mit 0 oder 1 ersetzen, jenachdem welche Farbe du der KI zuweisen willst.
    Außerdem muß in "GuiGetMsgLoop" ein Schalter (boolsche Variable) zum Steuern ob auf einen Klick von dir gewartet wird oder ansonsten ein automatischer Klick ausgeführt wird, eingefügt werden. Du must natürlich dafür sorgen daß du nur eine der beiden Maustasten benutzen kannst. Am Ende der _click func wird der Schalter umgelegt:

    Code
    $bMyTurn = Not $bMyTurn


    Tic Tac Toe ist eine gute Übung, um Programmlogik zu entwicklen. Ich bin mir auch sicher schon Tic Tac Toe Skripte im Forum gesehen zu haben, aber beim selber entwickeln lernst du mehr. Notfalls kannst du auch auf Wikipedia nachschauen, da gibt es die Reihen, wie gezogen werden muß damit der Gegner nicht gewinnen kann.