Controlclick nur mit Button-Text benutzten ohne ID's oder Instance-Nr

  • Hallo Zusammen,

    bei einem Programm das ich Steuern möche, habe ich zwei Buttons mit dem gleichem Text --> "copy to clipboard".

    Ich versuchte dies zuerst mit ID's oder Instance-Nr usw. zu steuern, jedoch vergeblich, da diese sich diese Nummern immer wieder ändern, bzw. auf einmal auf andere Buttons zuweisen.

    Das einzige das meiner Meinung Fix bleibt bei diesem Programm ist der Buttontext.

    Problematik und Erkenntnis:
    IDs und Instance-Nr ändern sich häufig im Testprogramm!

    Die einzige Lösung die Buttons mit Text zu suchen, und
    zuerst den einen danach den anderen zu drücken.

    Ungefährer Inhalt von beiden ClipBoards bekannt und mit
    StringInStr filterbar.

    Jemand eine Idee mit welchen Befehlen, bzw. wie ich das lösen kann?

    Gruss Goran

  • Danke Alex für deinen Beitrag, jedoch der Link führt zu einem Eintrag das sich mit dynamischen Cassnamen befasst.
    Dies nützt mir leider nichts, denn bei den zwei Buttons ist der Classname fix, jedoch die Instance-Nr und ID nicht.

    Also ich muss irgendwie die ID's dieser zwei Buttons herausfinden, damit ich diese mit ControlClick drücken kann.

    Ich probiere es mal mit ControlGetText. z.B erstelle ich mal eine Schlaufe von 1-50 ID, und immer wenn sich der Text mit meinem Buttontext übereinstimmt, merke ich mir die ID und kann es dann diese zwei Buttons mit Controlclick dann steuern.

  • Hab es geschafft, und zwar folgendermassen:

    Danke an allen die sich gedanken gemacht haben.

    [autoit][/autoit][autoit][/autoit][autoit]

    ;Ermittle die Instance-Nr von den Buttons "Copy to clipboard"
    For $instanceNr = 2 to 40 step 1
    $var = ControlGetText("Tester Controller","","[CLASS:TdxButton; INSTANCE:"&$instanceNr&"]")
    if $var="Copy to clipboard" then
    if $ersteInstanceNr="" then
    $ersteInstanceNr=$instanceNr
    ContinueLoop
    Else
    $zweiteInstanceNr=$instanceNr
    ContinueLoop
    EndIf
    EndIf
    next

    [/autoit]
  • Hier n tolles Script von aj1987
    Sollte sich zerlegen lass um es wenn nötig includen zu können....