Visible Window Text auslesen, auto. aktualisieren, bearbeiten...

  • hi, nach tage langen suchen im interenet und im forum verzweifle ich langsam.
    und wäre sehr dankbar wenn mir jemand weiter helfen könnte.

    so jetzt zum problem ( bin noch leider anfänger):
    ich möchte das der text aus dem "Visible Window Text" ausgelesen wird. das habe ich mit dem befehl:
    $x = ControlGetText ( "title", "text", controlID )
    MsgBox(0, "Gelesener Text:", $x)
    soweit hingekriegt.

    jetzt möcht ich gerne:
    1. das er den text bzw das. "visible window text" automatisch aktualisiert.
    2. den text der ausgelesn wurde bearbeiten d.h. strings löschen.
    3. den bearbeiten text in einer datenbank anlegen und auswerten.

    danke im vorraus

    • Offizieller Beitrag
    Zitat

    Original von 3ek
    jetzt möcht ich gerne:
    1. das er den text bzw das. "visible window text" automatisch aktualisiert.
    2. den text der ausgelesn wurde bearbeiten d.h. strings löschen.
    3. den bearbeiten text in einer datenbank anlegen und auswerten.

    Hi,

    du scheinst doch bereits auf dem richtigen Weg. Wenn du den Wert nicht zurükschreiben willst(schwer möglich außer es ist ein AutoitFenster), dann brauchst du doch nur einen Schleife bauen. DB würde ich anfangs erstmal mit einem Array machen.

    So long,

    Mega

    • Offizieller Beitrag

    So läßt sich kontinuierlich prüfen, ob der Wert sich geändert hat.

    [autoit]

    Dim $x, $last_x
    $x = ControlGetText ( "title", "text", controlID )
    $last_x = $x

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

    While 1
    Sleep(100)
    $x = ControlGetText ( "title", "text", controlID )
    If $x <> $last_x Then ; Text hat sich geändert
    ; was du tun willst
    $last_x = $x
    EndIf
    $msg = GuiGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case
    ;;;;
    EndSelect
    WEnd

    [/autoit]

    Den ausgelesenen Text findest du ja in der Variablen $x und kannst ihn nach Lust und Laune bearbeiten.

    Ich verstehe aber nicht, warum du die Info aktualisieren möchtest. Wenn du nicht mit:

    [autoit]

    ControlSetText ( "title", "text", controlID, "new text")

    [/autoit]

    aktiv eingreifst bleibt doch der Wert unverändert ?

    Vielleicht stellst du mal ein bischen von deinem Code ein - dann ist besser ersichtlich, was du eigentlich tun möchtest.

    Edit:
    Da war wohl doch eine von den Geburtstagsbrausen gestern schlecht :rofl: , jedenfalls hat sich in den Mustercode ein Fehler eingeschlichen. Habs hiermit korrigiert.