Hallo,
habe eine Combobox mit (zur Laufzeit) ca. 2000 Einträgen.
Die Eigenschaft
style hat den Wert
csDropDown.
Bei den Einträgen handelt es sich um 3- bis 6-stellige Ganzzahlen. Wann immer ein Eintrag ausgewählt wird, sollen anhand des Eintragwertes diverse
DB-Operationen durchgeführt werden, was jeweils einige Sekunden dauert.
Das hatte ich erst ans Ereignis OnSelect rangehängt.
Das gab aber Probleme; dieses Ereignis löst das Ereignis während der manuellen Tastatureingabenach jedem Tastenanschlag aus, sofern es deckende Einträge gibt (Beispiel: gebe ich "50" ein, macht er automatisch "50002"). Das ist aber nicht Sinn der Sache.
Also habe ich die
DB-Operationen ans OnKeyDown- Ereignis gehängt mit der Bedingung, dass der Key die <Enter>-Taste ist. Das ist auch ok. Man kann den Wert in Ruhe zu Ende eingeben ohne dass ständig neu geladen wird, und bei <Enter> wird geladen.
Jetzt soll aber auch geladen werden, wenn man per Maus einen Eintrag auswählt. Also habe ich meine
DB-Operationen zusätzlich ans OnClick- Ereignis gehängt. Funktioniert auch natürlich. Das Problem ist nur: Das OnClick- Ereignis löst ebenfalls aus, wenn, wie oben beschrieben, während der Tastatureingabe ein deckender Eintrag gefunden wird, somit bin ich an meinem Ursprungsproblem angekommen.
Kann ich irgendwie dafür sorgen, dass mein OnClick-Ereignis auch NUR beim Mausklick auslöst???
Viele Grüße...