![]() |
Datenbank: MySQL • Version: 4.x • Zugriff über: Zeos
DBLookupComboBox und Tastatureingabe?
Hallo Leute,
gibt es eigentlich eine Möglichkeit, bei einer DBLookupComboBox Tastatureingabe zu ermöglichen, um Datensätze schneller zu finden? Es soll dabei nicht nur der erste Buchstabe berücksichtigt werden sondern auch die danach eingegebenen. MfG davar |
Re: DBLookupComboBox und Tastatureingabe?
Muss das unbedingt DBLookupComboBox sein ?
|
Re: DBLookupComboBox und Tastatureingabe?
Hallo davar,
du musst einfach nur schneller tippen. PS: Die maximal 2 Sekunden zwischen den einzelnen Tasten sind leider fest verdrahtet. Grüße vom marabu |
Re: DBLookupComboBox und Tastatureingabe?
Zitat:
Bei mir geht es überhaupt nicht.. Nicht mal der erste Buchstabe.. @Karstadt: Was wäre denn z.B. eine Alternative? |
Re: DBLookupComboBox und Tastatureingabe?
Entschuldige davar,
ich habe deine Delphi-Versionsangabe missachtet - vermutlich ist dieses feature in D3 noch nicht implementiert. Da du ja die VCL-Quellen hast, kannst du dich leicht davon überzeugen, indem du die Methode KeyPress() untersuchst. Ich erinnere mich dunkel, dass ich dieses feature zu D123-Zeiten selbst nachgerüstet hatte. Ist nicht sonderlich schwer. Einfach eine Komponente ableiten, zusätzliche Eigenschaften FSearchText (String) und FSearchTicks (LargeInt) bereitstellen und in der Methode KeyPress() die Eingaben auswerten, eventuell sammeln und den Ticker aktualisieren. marabu |
Re: DBLookupComboBox und Tastatureingabe?
TDBCOMBOX :)
|
Re: DBLookupComboBox und Tastatureingabe?
Zitat:
|
Re: DBLookupComboBox und Tastatureingabe?
Hi,
du kannst dir in der Variable FSearchTicks ( := GetTickCount) merken, wann der Benutzer zuletzt aktiv war (OnKeyPress). Du kannst dann über ein konfigurierbares SearchTimeOut: Integer (= 2000) die Millisekunden vorgeben, nach deren Ablauf ohne Benutzerinteraktion du den aktuellen Suchtext (FSearchText) verwirfst. Das geschieht zu Beginn deines event handlers für OnKeyPress():
Delphi-Quellcode:
Viel Erfolg
begin
if (GetTickCount - FSearchTicks) > SearchTimeOut then FSearchText := ''; marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz