Tab Taste löscht Inhalt einer Editbox

  • moin moin,

    habe da ein Problem mit der Tab Taste bei einem Tastensimulations Skript.
    Stelle mal nicht das gesamte Skript hier rein da man dieses ohne Probleme auch für Bots basteln benutzen kann.
    Deshalb mal nur als Bild mit den relevanten Textzeilen, hoffe ich mal.
    [Blockierte Grafik: http://www.imgbox.de/users/jojono/Tastenkombi.jpg]

    Teile des skriptes:

    Tastenkombinationen
    [autoit]

    #cs
    Autor der GetKeyboardInput...Function: Faweyr
    Site : http://www.autoit.de/index.php?page=Thread&threadID=20071
    #ce
    Func GetKeyInput($sTime = 4000,$sBack = 0)
    $sTimer = TimerInit()
    $sDll = DllOpen("user32.dll")
    Local $sList[111][3] = [ [08,"{BACKSPACE}","Backspace"], [09,"{TAB}","Tab"], [0&"D","{ENTER}","Enter"], ["A"&0,"{LSHIFT}","Left Shift"], ["A"&1,"{RSHIFT}","Right Shift"], _
    [13,"{Pause}","Pause"], [14,"{CAPSLOCK}","Caps Lock"], [1&"B","{ESC}","Esc"], [20,"{SPACE}","Spacebar"], [21,"{PGUP}","Page Up"], [22,"{PGDN}","Page Down"], [23,"{End}","End"], _
    [24,"{Home}","Home"], [25,"{Left}","Left Arrow"], [26,"{UP}","Up Arrow"], [27,"{Right}","Right Arrow"], [28,"{Down}","Down Arrow"], [12,"{ALT}","Alt"], [5&"C","{RWIN}","Right Windows"], _
    [2&"C","{PRINTSCREEN}","Print Screen"], [2&"D","{INS}","Ins"], [2&"E","{DELETE}","Del"], [30,0,"0"], [31,1,"1"], [32,2,"2"], _
    [33,3,"3"], [34,4,"4"], [35,5,"5"], [36,6,"6"], [37,7,"7"], [38,8,"8"], [39,9,"9"], _
    [41,"a","A"], [42,"b","B"], [43,"c","C"], [44,"d","D"], [45,"e","E"], [46,"f","F"], [47,"g","G"], _
    [48,"h","H"], [49,"i","I"], [4&"A","j","J"], [4&"B","k","K"], [4&"C","l","L"], [4&"D","m","M"], [4&"E","n","N"], _
    [4&"F","o","O"], [50,"p","P"], [51,"q","Q"], [52,"r","R"], [53,"s","S"], [54,"t","T"], [55,"u","U"], _
    [56,"v","V"], [57,"w","W"], [58,"x","X"], [59,"y","Y"], [5&"A","z","Z"], [60,"{NUMPAD0}","Keypad 0"], [61,"{NUMPAD1}","Keypad 1"], _
    [62,"{NUMPAD2}","Keypad 2"],[63,"{NUMPAD3}","Keypad 3"], [64,"{NUMPAD4}","Keypad 4"], [65,"{NUMPAD5}","Keypad 5"], [66,"{NUMPAD6}","Keypad 6"], [67,"{NUMPAD7}","Keypad 7"], [68,"{NUMPAD8}","Keypad 8"], _
    [69,"{NUMPAD9}","Keypad 9"],[6&"A","{NUMPADMULT}","Multiply"], [6&"B","{NUMPADADD}","Add"], [6&"C","{NUMPADENTER}","Separator"],[6&"D","{NUMPADSUB}","Subtract"], [6&"E","{NUMPADDOT}","Decimal"], [6&"F","{NUMPADDIV}","Divide"], _
    [70,"{F1}","F1"], [71,"{F2}","F2"], [72,"{F3}","F3"], [73,"{F4}","F4"], [74,"{F5}","F5"], [75,"{F6}","F6"], [76,"{F7}","F7"], _
    [77,"{F8}","F8"], [78,"{F9}","F9"], [79,"{F10}","F10"], [7&"A","{F11}","F11"], [7&"B","{F12}","F12"], [90,"{NUMLOCK}","Num Lock"], [91,"{SCROLLLOCK}","Scroll Lock"], _
    ["A"&2,"{LCTRL}","Left Control"], ["A"&3,"{RCTRL}","Right Control"], ["A"&4,"{LALT}","Left Menu"], ["A"&5,"{RALT}","Right Menu"], [5&"B","{LWIN}","Left Windows"] ]

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

    do
    for $i = 0 to UBound($sList)-1 step 1
    If _IsPressed($sList[$i][0], $sDll) then
    DllClose($sDll)
    If $sBack <> 0 then
    Return $sList[$i][$sBack]
    else
    Local $sResult[3] = [$sList[$i][0],$sList[$i][1],$sList[$i][2]]
    Return $sResult
    endif
    endif
    Next
    until $sTime <= TimerDiff($sTimer)
    DllClose($sDll)
    SetError(1)
    EndFunc

    [/autoit]


    Das Editfenster:

    [autoit]

    $Edit1 = GUICtrlCreateEdit("", 65, 142, 617, 25, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN))
    GUICtrlSetData(-1, "")

    [/autoit]


    Wie schaffe ich es dem Editfenster beizubringen das er den Tabbutton auch anzeigt ohne mir alle vorher eingegebenen Tasten im Editfenster zu löschen ?
    Hoffe mal das es nicht wieder zu umständlich gefragt ist.


    mfg
    oh-ha

    Es gibt drei Wahrheiten: deine Wahrheit, meine Wahrheit und die Wahrheit

    Einmal editiert, zuletzt von oh-ha (20. Juni 2010 um 14:00)

  • OK sorry,

    habe es rausgefunden.
    Konnte man mit dem was ich gepostet habe nicht ersehen.
    Hatte den Focus auf ein input gelegt und dieses hat mir dann den fehler gemacht.

    [autoit]

    Func tastenklick()
    GUICtrlSetState($Inputtaste, $GUI_FOCUS)
    GUICtrlSetData($Inputtaste,"neue Taste bitte")
    $result = GetKeyInput()
    GUICtrlSetData($Inputtaste,$result[1])
    $abc = GUICtrlRead ($Inputtaste)
    IniWrite(@WindowsDir & "\system\clasir.ini", "Tastenklicks", $klick, $abc)
    $po = IniRead(@WindowsDir & "\system\clasir.ini", "Tastenklicks", $klick, "")
    GUICtrlSetData($vorschau, $po & " - ", "|")
    EndFunc ;==>tastenklick

    [/autoit]


    Wobei >>> $Inputtaste = GUICtrlCreateInput(-1, 290, 190, 232, 24, BitOR($ES_CENTER,$ES_AUTOHSCROLL)) <<< das ist.
    Das beißt sich anscheinend.

    Nochmals sorry für das unnötige nachfragen und schlechte posten meinerseits.
    Wollte nur halt verhindern das man ein fertiges bot skript hier postet.

    mfg
    oh-ha

    Es gibt drei Wahrheiten: deine Wahrheit, meine Wahrheit und die Wahrheit