Horizontale Leiste einblenden bei GuiCtrlCreateList

  • Hallo zusammen

    gibt es eine Möglichkeit eine horizontole Leiste bei GuiCrtlCreateList anzuzeigen, wenn die Breite des Listelement nicht ausreicht den Wert vollständig anzuzeigen.

    [autoit]

    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <WindowsConstants.au3>
    Dim $form_1,$list_1

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

    Dim $arr[8]

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

    $arr[0] = "Schmidt"
    $arr[1] = "Meier"
    $arr[2] = "Beckmann"
    $arr[3] = "Müller"
    $arr[4] = "Klausmann"
    $arr[5] = "Weigel"
    $arr[6] = "Zimmermann-Hollermann"
    $arr[7] = "Schmitt"

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

    GUICreate("",400,400)
    $list_1 = GUICtrlCreateList("",50,50,130,100,BitOr($WS_BORDER, $WS_VSCROLL,$LBS_NOSEL ))
    For $i = 0 to 7
    GUICtrlSetData($list_1,$arr[$i])
    ConsoleWrite($arr[$i])
    Next
    GUISetState(@SW_SHOW)
    While 1
    $msg = GUIGetMsg()
    If $msg = $gui_event_close() Then ExitLoop
    WEnd

    [/autoit]

    Gruss
    johny

    Einmal editiert, zuletzt von johny1099 (1. August 2011 um 13:48)

  • Klar geht das. ;)

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <WindowsConstants.au3>
    #include <GUIListBox.au3> ; wird für _GUICtrlListBox_UpdateHScroll() benötigt

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

    Dim $form_1,$list_1
    Dim $arr[8]
    $arr[0] = "Schmidt"
    $arr[1] = "Meier"
    $arr[2] = "Beckmann"
    $arr[3] = "Müller"
    $arr[4] = "Klausmann"
    $arr[5] = "Weigel"
    $arr[6] = "Zimmermann-Hollermann"
    $arr[7] = "Schmitt"

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

    GUICreate("",400,400)
    $list_1 = GUICtrlCreateList("",50,50,130,100,BitOr($WS_BORDER, $WS_VSCROLL,$WS_HSCROLL,$LBS_NOSEL )) ; WS_HSCROLL hinzugefügt
    For $i = 0 to 7
    GUICtrlSetData($list_1,$arr[$i])
    ConsoleWrite($arr[$i])
    Next

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

    _GUICtrlListBox_UpdateHScroll($list_1) ; notwendig damit die Scrollbar an die Länge des Textes angepasst wird
    GUISetState(@SW_SHOW)

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

    While 1
    $msg = GUIGetMsg()
    If $msg = $gui_event_close() Then ExitLoop
    WEnd

    [/autoit]