GuiCtrlInput Frage -

  • huhu an alle ich habe mich extra für diese Frage hier regestriert ,

    und frage hier auch noch einiges mehr :) aber nun zu meinem Problem ...

    Ich fange gerade mit nem Gui neu an ales ganz normal scripten ohne AutoIt kein Prob :)

    Aber mit nem Gui hab ich Probleme hier mein source :

    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\Kram und so weiter\koda_2008-02-10\Forms\Form1.kxf
    $Form1 = GUICreate("Form1", 626, 328, 193, 125)
    $Notepad = GUICtrlCreateButton("Notepad", 24, 72, 81, 33, 0)
    $Schreibezeilen = GUICtrlCreateButton("Schreibezeilen", 112, 72, 81, 33, 0)
    $Schreiben = GUICtrlCreateInput("Was soll ich schreiben", 32, 136, 185, 21)
    $Pic1 = GUICtrlCreatePic("", 280, 0, 337, 321, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Notepad
    Run("notepad.exe")
    Case $Schreiben

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

    Case $Schreibezeilen
    Sleep(5000)
    Send($Schreiben)

    EndSwitch
    WEnd

    [/autoit]

    Nun wie lese ich das aus was in :

    [autoit]

    $Schreibezeilen = GUICtrlCreateButton("Schreibezeilen", 112, 72, 81, 33, 0)

    [/autoit]

    Steht ?

    damit er es wenn ich auf dem Button Schreibezeilen drücke es auch schreibt ?

    Ich danke euch jetzt schonmal für eure Hilfe :)

    Mfg

    killgamer

    • Offizieller Beitrag

    Hallo,

    Du willst wahrscheinlich den Inhalt der Inputbox ins Notepad schreiben!


    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\Kram und so weiter\koda_2008-02-10\Forms\Form1.kxf
    $Form1 = GUICreate("Form1", 626, 328, 193, 125)
    $Notepad = GUICtrlCreateButton("Notepad", 24, 72, 81, 33, 0)
    $Schreibezeilen = GUICtrlCreateButton("Schreibezeilen", 112, 72, 81, 33, 0)
    $Schreiben = GUICtrlCreateInput("Was soll ich schreiben", 32, 136, 185, 21)
    $Pic1 = GUICtrlCreatePic("", 280, 0, 337, 321, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Notepad
    Run("notepad.exe")
    Case $Schreiben

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

    Case $Schreibezeilen
    ControlSend("[Class:Notepad]", "", "Edit1", GUICtrlRead($Schreiben))

    EndSwitch
    WEnd

    [/autoit]
  • so:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\Kram und so weiter\koda_2008-02-10\Forms\Form1.kxf
    $Form1 = GUICreate("Form1", 626, 328, 193, 125)
    $Notepad = GUICtrlCreateButton("Notepad", 24, 72, 81, 33, 0)
    $Schreibezeilen = GUICtrlCreateButton("Schreibezeilen", 112, 72, 81, 33, 0)
    $Schreiben = GUICtrlCreateInput("Was soll ich schreiben", 32, 136, 185, 21)
    $Pic1 = GUICtrlCreatePic("", 280, 0, 337, 321, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW,$Form1)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Select
    Case $nMsg = $GUI_EVENT_CLOSE
    Exit
    Case $nMsg = $Notepad
    ;Run()
    Case $Schreibezeilen
    $inhalt = GUICtrlRead($schreiben)
    Sleep(5000)
    Send($inhalt)
    MsgBox(0,"","Ich schreibe :" & $inhalt)
    EndSelect
    WEnd

    [/autoit]


    gRUß

  • Danke @ bernd deins funzt einwandfrei ..

    Cönn3y bei dir schreibt er das dirrekt oder besser gesagt kommt die MsgBox direkt nach dem ich notepad taste drücke er soll ja erst mit der notepad taste wenn ich dort drauf drücke notepad öffnen und erst wenn ich auf schreibezeilen button drücke den text schreiben aber danke dir trotzdem

    Ich bin schlauer geworden und Prob gelöst auf zum nächsten prob wenns eins gibt :)

    danke nochmal

  • sry doch noch ein Prob wie lese ich das allgemein aus wenn ich es z.b. net in den notepad schreiben will ?

    • Offizieller Beitrag

    Controls liest man mit GuiCtrlRead aus!

  • hmm aber wenn ich nur so mache

    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\Kram und so weiter\koda_2008-02-10\Forms\Form1.kxf
    $Form1 = GUICreate("Form1", 626, 328, 193, 125)
    $Notepad = GUICtrlCreateButton("Notepad", 24, 72, 81, 33, 0)
    $Schreibezeilen = GUICtrlCreateButton("Schreibezeilen", 112, 72, 81, 33, 0)
    $Schreiben = GUICtrlCreateInput("Was soll ich schreiben", 32, 136, 185, 21)
    $Pic1 = GUICtrlCreatePic("", 280, 0, 337, 321, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Notepad
    Run("notepad.exe")
    Case $Schreiben

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

    Case $Schreibezeilen
    GUICtrlRead($Schreiben)
    Sleep(2000)
    Send($Schreiben)

    EndSwitch
    WEnd

    [/autoit]

    also ich will das so machen ....

    und nicht mit dem ControlSend ...

    wenn ich jetzt in das feld dort die sachen eingebe und auf dem button schreibe zeilen drüke und den notepd aktiviere dann schreibt er dort nur eine "5" rein ...

    also wie geht das ohne ControlSend ?

  • ich wollte in dem script auch nur das prinzip veranschaulichen. ;) mir ist klar was passiert^^
    Schau dir mal winactivate an. und ich denke später wirst du auch noch @CRLF brauchen.
    gruß
    EDIT: Ach ja. Deine Frage wird in meinem Bsp Script beantwortet

    • Offizieller Beitrag

    Entweder so:

    [autoit]

    Send(GUICtrlRead($Schreiben))

    [/autoit]

    oder man kann es auch so machen:

    [autoit]

    $szText = GUICtrlRead($Schreiben)
    Send($szText)

    [/autoit]
  • Jo so klappt es danke bernd :)

    jetzt is das prob ehrlich gelöst


    Mfg

    killgamer