GUI mit Liste erstellen mit anschliessender Ausgabe der markierten Elemente

  • Tag

    Ich versuche mich gerade an den GUI Funktionen von Autoit, und wollte eigentlich für den Anfang ein Tool erstellen, welches aus einer Liste Menüoptionen ausliest und diese dann in einer ListBox ausgibt in der man die gewünschten Items markieren kann und diese dann in eine Datei geschrieben werden sollen (zum Testen habe ich einfach mal eine MsgBox gemacht). Allerdings kann ich nur ein Item auf einmal auswählen, und beim klick auf meinen Button passiert nichts. Hier mal der kleine Sourcecode:

    [autoit]

    #include <GUIConstants.au3>
    #Include <GuiListBox.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 193, 417, 193, 125)
    $Liste = GUICtrlCreateList("", 16, 24, 161, 110)
    $Label = GUICtrlCreateLabel("Label1", 16, 8, 28, 17)
    $Test = GUICtrlCreateButton("Button1", 96, 0, 75, 25, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    For $i = 1 to 20
    GUICtrlSetData($Liste, $i)
    Next

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

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

    Case $Test
    $Get = _GUICtrlListBox_GetSelItemsText($Liste)
    For $i = 1 to $Get[0]
    MsgBox(64, "test", $Get[$i])
    Next
    EndSwitch
    WEnd

    [/autoit]

    3 Mal editiert, zuletzt von ahatius (6. Januar 2010 um 21:53)

  • Wenn ich den Parameter $LBS_EXTENDEDSEL einbaue, habe ich keinen Scrollbalken mehr. Wenn ich ihn entferne habe ich einen Scrollbalken, kann allerdings nur einen markieren.

    [autoit]

    $Liste = GUICtrlCreateList("", 16, 24, 161, 110, BitOR($LBS_DISABLENOSCROLL, $LBS_EXTENDEDSEL))

    [/autoit]


    Klappt auch nicht...

  • Warum klappt das nicht? Bei mir funktioniert das Perfekt

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>
    #Include <GuiListBox.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 193, 417, 193, 125)
    $Liste = GUICtrlCreateList("", 16, 24, 161, 110,BitOr($GUI_SS_DEFAULT_LIST,$LBS_EXTENDEDSEL,$LBS_DISABLENOSCROLL))
    $Label = GUICtrlCreateLabel("Label1", 16, 8, 28, 17)
    $Test = GUICtrlCreateButton("Button1", 96, 0, 75, 25, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    For $i = 1 to 20
    GUICtrlSetData($Liste, $i)
    Next

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

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

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

    Case $Test
    $Get = _GUICtrlListBox_GetSelItemsText($Liste)
    For $i = 1 to $Get[0]
    MsgBox(64, "test", $Get[$i])
    Next
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit]
    Spoiler anzeigen

    Grundkenntnisse in: C++, JavaScript
    Sehr gute Kenntnisse: PHP, JAVA, C und näturlich AutoIt


    Klaviatur, Anhang UDF, GDI+ Mühle

    Zitat

    "Wenn einen um 20h der Pizzadienst anruft und fragt, ob man's nur vergessen hat und ob man das gleiche
    möchte wie immer -- dann sollte man sein Bestellverhalten evtl überdenken"