problem mit meiner console

  • hallo

    hab ein prob mit backspace in meiner konsole...

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <misc.au3>
    Global $text =""
    Global $inp =""
    $gui="FTPconsole"
    #Region ### START Koda GUI section ### Form=c:\dokumente und einstellungen\johannes\desktop\berrechnungsprogs\kodas\pureconsole.kxf
    $Form1_1 = GUICreate($gui, 400, 200, 193, 115, -1, BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUISetBkColor(0x008000)
    $Edit1 = GUICtrlCreateEdit("", 0, 0, 400, 200, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_READONLY,$ES_WANTRETURN), 0)
    GUICtrlSetBkColor(-1,0x000000)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    GUICtrlSetColor($Edit1,0x00ff00)
    ;___________________________
    settext("test test test")
    input()
    ;___________________________
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    EndSwitch
    WEnd
    Func input()
    $value = ""
    $count = 0
    While 1
    Select
    #cs uninteresant
    Case _ispressed("41") And WinGetTitle("")= $gui
    $inp = $inp & "a"
    $value = $value & $inp
    settext($inp)
    while _ispressed("41")
    Sleep (1)
    WEnd
    Case _ispressed("42") And WinGetTitle("")= $gui
    $inp = $inp & "b"
    $value = $value & $inp
    settext($inp)
    while _ispressed("42")
    Sleep (1)
    WEnd
    Case _ispressed("43") And WinGetTitle("")= $gui
    $inp = $inp & "c"
    $value = $value & $inp
    settext($inp)
    while _ispressed("43")
    Sleep (1)
    WEnd
    Case _ispressed("44") And WinGetTitle("")= $gui
    $inp = $inp & "d"
    $value = $value & $inp
    settext($inp)
    while _ispressed("44")
    Sleep (1)
    WEnd
    Case _ispressed("45") And WinGetTitle("")= $gui
    $inp = $inp & "e"
    $value = $value & $inp
    settext($inp)
    while _ispressed("45")
    Sleep (1)
    WEnd
    Case _ispressed("46") And WinGetTitle("")= $gui
    $inp = $inp & "f"
    $value = $value & $inp
    settext($inp)
    while _ispressed("46")
    Sleep (1)
    WEnd
    Case _ispressed("47") And WinGetTitle("")= $gui
    $inp = $inp & "g"
    $value = $value & $inp
    settext($inp)
    while _ispressed("47")
    Sleep (1)
    WEnd
    Case _ispressed("48") And WinGetTitle("")= $gui
    $inp = $inp & "h"
    $value = $value & $inp
    settext($inp)
    while _ispressed("48")
    Sleep (1)
    WEnd
    Case _ispressed("49") And WinGetTitle("")= $gui
    $inp = $inp & "i"
    $value = $value & $inp
    settext($inp)
    while _ispressed("49")
    Sleep (1)
    WEnd
    Case _ispressed("4A") And WinGetTitle("")= $gui
    $inp = $inp & "j"
    $value = $value & $inp
    settext($inp)
    while _ispressed("4A")
    Sleep (1)
    WEnd
    Case _ispressed("4B") And WinGetTitle("")= $gui
    $inp = $inp & "k"
    $value = $value & $inp
    settext($inp)
    while _ispressed("4B")
    Sleep (1)
    WEnd
    Case _ispressed("4C") And WinGetTitle("")= $gui
    $inp = $inp & "l"
    $value = $value & $inp
    settext($inp)
    while _ispressed("4C")
    Sleep (1)
    WEnd
    Case _ispressed("4D") And WinGetTitle("")= $gui
    $inp = $inp & "m"
    $value = $value & $inp
    settext($inp)
    while _ispressed("4D")
    Sleep (1)
    WEnd
    Case _ispressed("4E") And WinGetTitle("")= $gui
    $inp = $inp & "n"
    $value = $value & $inp
    settext($inp)
    while _ispressed("4E")
    Sleep (1)
    WEnd
    Case _ispressed("4F") And WinGetTitle("")= $gui
    $inp = $inp & "o"
    $value = $value & $inp
    settext($inp)
    while _ispressed("4F")
    Sleep (1)
    WEnd
    Case _ispressed("50") And WinGetTitle("")= $gui
    $inp = $inp & "p"
    $value = $value & $inp
    settext($inp)
    while _ispressed("50")
    Sleep (1)
    WEnd
    Case _ispressed("51") And WinGetTitle("")= $gui
    $inp = $inp & "q"
    $value = $value & $inp
    settext($inp)
    while _ispressed("51")
    Sleep (1)
    WEnd
    Case _ispressed("52") And WinGetTitle("")= $gui
    $inp = $inp & "r"
    $value = $value & $inp
    settext($inp)
    while _ispressed("52")
    Sleep (1)
    WEnd
    Case _ispressed("53") And WinGetTitle("")= $gui
    $inp = $inp & "s"
    $value = $value & $inp
    settext($inp)
    while _ispressed("53")
    Sleep (1)
    WEnd
    Case _ispressed("54") And WinGetTitle("")= $gui
    $inp = $inp & "t"
    $value = $value & $inp
    settext($inp)
    while _ispressed("54")
    Sleep (1)
    WEnd
    Case _ispressed("55") And WinGetTitle("")= $gui
    $inp = $inp & "u"
    $value = $value & $inp
    settext($inp)
    while _ispressed("55")
    Sleep (1)
    WEnd
    Case _ispressed("56") And WinGetTitle("")= $gui
    $inp = $inp & "v"
    $value = $value & $inp
    settext($inp)
    while _ispressed("56")
    Sleep (1)
    WEnd
    Case _ispressed("57") And WinGetTitle("")= $gui
    $inp = $inp & "w"
    $value = $value & $inp
    settext($inp)
    while _ispressed("57")
    Sleep (1)
    WEnd
    Case _ispressed("58") And WinGetTitle("")= $gui
    $inp = $inp & "x"
    $value = $value & $inp
    settext($inp)
    while _ispressed("58")
    Sleep (1)
    WEnd
    Case _ispressed("59") And WinGetTitle("")= $gui
    $inp = $inp & "y"
    $value = $value & $inp
    settext($inp)
    while _ispressed("59")
    Sleep (1)
    WEnd
    Case _ispressed("5A") And WinGetTitle("")= $gui
    $inp = $inp & "z"
    $value = $value & $inp
    settext($inp)
    while _ispressed("5A")
    Sleep (1)
    WEnd
    case _ispressed("30") And WinGetTitle("")= $gui
    $Inp = $inp & "0"
    $value = $value & $inp
    settext($inp)
    while _ispressed("30")=1
    sleep(1)
    WEnd
    case _ispressed("31") And WinGetTitle("")= $gui
    $Inp = $inp & "1"
    $value = $value & $inp
    settext($inp)
    while _ispressed("31")=1
    sleep(1)
    WEnd
    case _ispressed("32") And WinGetTitle("")= $gui
    $Inp = $inp & "2"
    $value = $value & $inp
    settext($inp)
    while _ispressed("32")=1
    sleep(1)
    WEnd
    case _ispressed("33") And WinGetTitle("")= $gui
    $Inp = $inp & "3"
    $value = $value & $inp
    settext($inp)
    while _ispressed("33")=1
    sleep(1)
    WEnd
    case _ispressed("34") And WinGetTitle("")= $gui
    $Inp = $inp & "4"
    $value = $value & $inp
    settext($inp)
    while _ispressed("34")=1
    sleep(1)
    WEnd
    case _ispressed("35") And WinGetTitle("")= $gui
    $Inp = $inp & "5"
    $value = $value & $inp
    settext($inp)
    while _ispressed("35")=1
    sleep(1)
    WEnd
    case _ispressed("36") And WinGetTitle("")= $gui
    $Inp = $inp & "6"
    $value = $value & $inp
    settext($inp)
    while _ispressed("36")=1
    sleep(1)
    WEnd
    case _ispressed("37") And WinGetTitle("")= $gui
    $Inp = $inp & "7"
    $value = $value & $inp
    settext($inp)
    while _ispressed("37")=1
    sleep(1)
    WEnd
    case _ispressed("38") And WinGetTitle("")= $gui
    $Inp = $inp & "8"
    $value = $value & $inp
    settext($inp)
    while _ispressed("38")=1
    sleep(1)
    WEnd
    case _ispressed("39") And WinGetTitle("")= $gui
    $Inp = $inp & "9"
    $value = $value & $inp
    settext($inp)
    while _ispressed("39")=1
    sleep(1)
    WEnd
    Case _ispressed("20") And WinGetTitle("")= $gui
    $inp = $inp & " "
    $value = $value & $inp
    settext($inp)
    While _ispressed("20")
    Sleep(1)
    WEnd
    Case _ispressed("be") And WinGetTitle("")= $gui
    $inp = $inp & "."
    $value = $value & $inp
    settext($inp)
    While _ispressed("be")
    Sleep(1)
    WEnd
    Case _ispressed("0d") And WinGetTitle("")= $gui
    While _IsPressed("0d")
    Sleep(1)
    WEnd
    #ce ExitLoop
    Case _ispressed("08") And WinGetTitle("")= $gui;<-backspace
    if $count <> 0 then
    $text = StringTrimRight($text,1)
    GUICtrlSetData($Edit1,$text)
    Sleep(100)
    $count = $count - 1
    Endif
    Case _IsPressed("11") And _IsPressed("56") And WinGetTitle("")= $gui
    $inp = $inp & ClipGet()
    while _IsPressed("56")
    Sleep(1)
    WEnd
    settext($inp)
    Case Else
    $count = $count -1
    EndSelect
    $count = $count +1
    $Inp = ""
    WEnd
    Return $value
    EndFunc
    func settext($ntext,$crlf=0)
    If $crlf = 1 Then
    $text = $text & @CRLF & $ntext
    ElseIf $crlf = 0 Then
    $text = $text & $ntext
    EndIf
    GUICtrlSetData($Edit1,$text)
    EndFunc

    [/autoit]


    ich will das der benutzer seine eingabe löschen kann aber nicht die von der konsole selbst.

    aber irgendwie funktioniert da was nicht:(

    wist ihr an was das liegt?

    mfg

    Einmal editiert, zuletzt von derda (30. Juni 2007 um 18:18)

  • Mach das, was nicht gelöscht werden soll als Label über dem Editfeld. Einziges Problem dabei ist dann, dass du einiges unter dem Label schreibst und das somit nicht sieht.

    Eine andere Möglichkeit wüsste ich nun nicht :\

  • hi

    es ist ja nicht das problem das ich nciht weiß wie ich nur die usereingabe löschen kann, es ist das problem das es nciht funktioniert wie es sollte :rolleyes:

    bei jedem buchstaben den der user eintippt wird $count um eins erhöt und bei jedem mal wo der user backspace drückt wird $count um eins verrigert -> wenn keine zeichen fom user da stehen, kann auch ncihts gelöscht werden.

    // habs jetzt nochmal umgeschrieben und es funktioniert perfect...

    mfg

    Einmal editiert, zuletzt von derda (30. Juni 2007 um 21:29)