Seite 1 von 1

Wie ein AutoComplete schreiben?

Verfasst: 9. Oktober 2005 17:18
von sea_bear
Moin moin!
Ich brauche in einem Programm eine Funktion, welche laufend die Eingabe des Users in einem Feld überwacht und mit dem Inhalt einer Datenbank vergleicht. Liegt eine Übereinstimmung vor, so soll nun diese Eingabe vervollständigt werden. Möchte der User die Eingabe übernehmen, so verläßt er einfach das Feld, ansonsten kann er die Eingabe überschreiben. Eigentlich eine Funktion wie man sie von vielen Programmen her kennt.
Nur, wie schreibe ich sie selber?? Stehe da ein wenig auf dem Schlauch. Ich habe nun eine Funktion geschrieben, welche auch ganz gut klappt. leider ist der User dmit aber nicht in der Lage die Vorschläge des Computers zu überschreiben. Nicht so toll also. Wie aber mache ich es besser??

mfg
Tobias

Re: Wie ein AutoComplete schreiben?

Verfasst: 9. Oktober 2005 17:43
von nora
> leider ist der User dmit aber nicht in der Lage die Vorschläge des
> Computers zu überschreiben. Nicht so toll also. Wie aber mache ich
> es besser??

Hmm, ich weiß ja nicht wie Du das realisiert hast.

Ich habe mir dafür einen Validator gebaut, welcher z.B. auf folgende Weise
in ein QTextEdit eingehangen wird:

Code: Alles auswählen

m->e_ort->setValidator (new Vonl (m, "SELECT ort FROM plz WHERE ort LIKE '%s'", dbh));
Das 'm->e_ort' ist mein Formularfeld für Ort und der Validator macht bei
jedem gültigen Eingabezeichen ein SELECT in der Datenbank auf die Orte
für die Zeichen 0 bis Cursor-Position. Der erste gefundene Ort wird ins
Feld kopiert.

Falls Dir das als Idee nicht ausreicht, kann ich auch mal den Quelltext
posten. Die Klasse 'Vonl' besteht nur aus 20-30 Zeilen.

Liebe Grüße, Nora.