Editbox strg+a Fähig machen

  • Hallo,

    ich habe zum Teil lange Texte in einer Editbox. Ich kann aber leider nicht (selbst wenn die Box aktiv ist, ich also etwas reinschreiben kann) strg+a verwenden um den ganzen Text zu markieren.
    Gibt es da einen Trick oder Style, den man verwenden kann?

    Vielen Dank für eure Antworten.
    Aquaplant

  • Spoiler anzeigen
    [autoit]

    #include <WinAPI.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    HotKeySet("^a", "_selAll")
    Func _selAll()
    _SendMessage(ControlGetHandle("", "", ""), $EM_SETSEL, 0, -1)
    EndFunc ;==>_selAll

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

    $Form1 = GUICreate("Form1", 200, 111, 263, 148)
    $Edit1 = GUICtrlCreateEdit("", 8, 8, 185, 89)
    GUICtrlSetData(-1, "Edit1")
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • Diese Version ist besser;

    [autoit]

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

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

    $Form1 = GUICreate("Form1", 200, 111, 263, 148)
    $Edit1 = GUICtrlCreateEdit("", 8, 8, 185, 89)
    $dummySelectAll = GUICtrlCreateDummy()
    Dim $aAccelKeys[1][2] = [ ['^a', $dummySelectAll] ]
    GUISetAccelerators($aAccelKeys)

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

    GUICtrlSetData(-1, "Edit1")
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $dummySelectAll
    GUICtrlSendMsg($Edit1, $EM_SETSEL, 0, -1)
    EndSwitch
    WEnd

    [/autoit]