GUICtrlCreateCombo auf Auswahl beschränken

  • Hallo,

    ich habe ein Combo Feld und darin einige Werte zur Auswahl.. Momentan ist es leider möglich dort auch Freitext zu tippen. Ist es möglich das zu verhindern, sodass nur noch die vorhandenen Combo einträge auszuwählen sind ? Ich habe keine Einstellung dafür gefunden.

    Danke

    Franz

    ---
    In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
    ---

    Einmal editiert, zuletzt von franzp (17. April 2009 um 17:16)

  • so zb.

    [autoit]

    $hFont = GUICtrlCreateCombo("8.5", 70, 10, 40, 20, $CBS_DROPDOWNLIST)

    [/autoit]

    Edit: Hab die Fehlende Klammer eingefügt

    Einmal editiert, zuletzt von simon (17. April 2009 um 14:24)

  • Simons antwort klappt bei mir nicht !
    So sollte es auch gehen:

    [autoit]

    GUICtrlCreateCombo("Lesbare Combo", 5, 10, 40, 20, 0x0003)

    [/autoit]

    MFG

  • ja schonmal nicht schlecht genau das meinte ich. Nur blöderweise ist jetzt ein ganz komisches Phänomen.. Er verkürzt die Dropdownlist extrem. Es werden nur 30 items angezeigt, wenn man das dropdown benutzt. Die unteren sind nur ueber den buchstaben zu erreichen.

    Kann man diese 30 item Beschränkung auch aufheben ?

    Vielen Dank

    Franz

    P.S. bei mir hatte die $CBS_DROPDOWNLIST schon funktioniert. Man brauch den include #include <GUIConstantsEx.au3> dann klappts.

    ---
    In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
    ---

  • hier ein Beispiel mit den 30 Werten:

    [autoit]

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

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\fpr\Eigene Dateien\aa.kxf
    $Form2 = GUICreate("Form1", 413, 305, 303, 219)
    $Combo1 = GUICtrlCreateCombo("", 72, 80, 145, 25, BitOR($CBS_DROPDOWNLIST,$CBS_AUTOHSCROLL))
    GUICtrlSetData(-1, "1|2|3|4|5|6|7|8|9|0|11|q|w|e|r|t|z|u|i|o|p|ü|a|s|d|f|g|h|j|k|l|ö|ä|y|x|c|v|b|n|m|,|.")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

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

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

    EndSwitch
    WEnd

    [/autoit]

    ---
    In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
    ---

  • Ka aber sie werde nicht gekürzt schau mal nach geh mal auf eines die angezeigt werden lasse geklickt und fahre nach unten dann kommt man zu den anderen

  • du hast recht, aber der Scrollbalken ist einfach nicht zu sehen und das könnte den Anwender ziemlich stören.

    ---
    In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
    ---

  • Ich weis habe aber ka warum ich habe auch in den Styles versucht +(-1) einzufügen hat aber auch nix genützt -1 = Standardstyles

  • @ simon bei dir fehlt ne Klammer, damit es geht :D
    Ich weiß nicht ob Mazo es einfach rauskopiert hat aber wenn nicht dann weiß ich es auch nicht...
    mfg Bio

  • @Bio Drink danke habs schon eingefügt die Fehlende Klammer oben im Post aber das dürfte franzp nicht vergessen haber besser gesagt er hat es gemerkt zum scrollen muss es irgend einen fehlenden style geben glaube ich

  • Als Include bracuht man nur "GuiConstantsEX" sonst nichts und dann eben noch ein gui machen und guisetstate...
    mfg Bio

  • So geht es:

    Spoiler anzeigen
    [autoit]

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

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\fpr\Eigene Dateien\aa.kxf
    $Form2 = GUICreate("Form1", 413, 305, 303, 219)
    $Combo1 = GUICtrlCreateCombo("", 72, 80, 145, 25, 0x0003+0x00200000)
    GUICtrlSetData(-1, "1|2|3|4|5|6|7|8|9|0|11|q|w|e|r|t|z|u|i|o|p|ü|a|s|d|f|g|h|j|k|l|ö|ä|y|x|c|v|b|n|m|,|.")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

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

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

    EndSwitch
    WEnd

    [/autoit]

    mfg. Jam00

  • Jam00, die Namen der Stile angeben wäre auch nicht schlecht ;)

    [autoit]

    #include <ComboConstants.au3>
    #include <WindowsConstants.au3>

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

    BitOR($CBS_DROPDOWNLIST, $WS_VSCROLL)

    [/autoit]
  • Stimmt mich wundert nur immer wiso die Syles in Variablen nur mit Includes gehen und die Gleichen in Zahlenwerten nicht

  • In den Includes werden die Zahlenwerte den Variablen zugewiesen. Deshalb kann man die Variablen statt den Zahlenwerten verwenden.
    Durch die Variablen ist eben leichter verständlich, was sie bewirken. Zu den Zahlenwerten bekommt man die Informationen nicht so leicht. Da muss man viel länger suchen.

  • vielen Dank ! jetzt klappt´s

    ---
    In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
    ---