Eingabehilfe
-
Servus alle miteinander!
Ich wollt zur Eingabe in ein Textfeld ne aktive Hilfe hinzufügen, dh so ne
Art Filter, der bestimmte Auswahlmöglichkeiten anzeigt, unter denen man wählen kann.
Wie mach ich das am besten?
Soll ich ein Kombinationsfeld nehmen oder geht das anders viel besser?Vielen Dank im Voraus
-
Das Kombinationsfeld dürfte wohl das einfachste und geläufigste sein.
Falls du dazu nach etwas suchst, es heißt auch Combobox, mit dem Begriff findest du mehr.
-
Ich hab jetzt so ne ComboBox. Meine Filterfunktion fügt die Werte auch hinzu.
Allerdings ist jetzt mein Problem, dass ich die Box irgendwie bei eingegebenem Buchstaben öffnen will. Ich habs mit SendMessage(CBN_DROPDOWN) versucht, er setzt aber nur den Focus. Wahrscheinlich schließt sich die Combobox einfach schnell wieder.
Kann ich die Box irgendwie offen halten?
-
Das weiß ich leider nicht, wie man das macht.
Aber wenn du in den Eigenschaften auf "Dropdown-Listenfeld" stellst, dann springt der automatisch auf den ersten zu deiner Eingabe passenden Eintrag.
Allerdings kannst du dann nur noch Einträge wählen, nicht mehr andere eingeben.
-
Hab ich schon ausprobiert, aber das ist nicht so das wahre. Soll ichs vielleicht lieber mit ´nem Popupmenu versuchen? Sowas wie beim Rechtsklick. Ich hab da was gelesen.
-
Das wäre eine Möglichkeit.
Eine andere wäre, einfach mit Create für die Zeit bis zur Auswahl eine Listbox zu zeigen, so wie Visual Studio.
-
Das ist eine gute Idee.
Ich hab jetzt eine unsichtbare ListBox gesetzt, finde allerdings den Befehl zum sichtbar machen nicht. Gibts da nicht sowas wie SetVisible?
-
ShowWindow heißt das.
-
Wenn ich als Parameter 1 übergeb funktionierts sogar
Kannst du mir auch sagen, was der Parameter soll? Bool wäre doch irgendwie sinnvoller.
-
1 enstpricht TRUE und wird auch als true interpretiert.
0 enstpricht FALSE und wird auch als false interpretiert.BOOL ist dasselbe wie int! ("typedef BOOL int;")
bool ist ein eigener Typ.
-
Nimm SW_SHOW und SW_HIDE.