![]() |
IntraWeb Suche
Hallo
Frage an die Profis Ich hab ne Intraweb Anwendung und muss ne Suche implementieren Ein Eingabefeld IWEdit, darunter ne IWListbox. Wenn ich im Editfeld nen Suchbegriff eingebe, wird anhand dessen ein Sql abgesetzt und das Ergebnis in die Listbox geschrieben und diese angezeigt. so weit so gut, dsa funktioniert auch alles. Ich wollte nun die Suche auf OnAsyncKeyDown starten. Geht auch, aber ich möchte aber verhindern, das die Suche nach jedem Zeichen startet, sondern erste wenn ich eine Zeitlang (300 ms)nichts mehr getippt habe (IWTimer). Stehe gerade irgendwie neben mir. Bin für jeden Tipp dankbar !!! |
AW: IntraWeb Suche
Hi,
ein TIwTimer löst diese Aufgabe elegant. Einfach nach Aufruf den Timer mit Timer.Enabled:=True starten und im Event selbst folgenden Code hinzufügen. Die Timerzeit auf einen Wert vom 250 bis 1000ms einstellen. Timer.Enabled:=False; StarteDBAbfrage(); |
AW: IntraWeb Suche
Hi lowmax_5
Das ist aber mein Problem, habe z.B. einen Suchbegriff "actions" wenn ich nach Eingabe von "a" bei OnAsyncKeyDown bereits der Timer starte, möchte den Timer aber bei Eingabe eines weiteren Zeichens wieder stoppen und erst nach dem letzten Zeichen starten. Das timer.enabled := false bei einem bereits gestarteten Timer funktioniert irgendwie nicht |
AW: IntraWeb Suche
Hi,
normalweise verwende ich immer das Event 'OnKeyPress'. Wenn ein Wort eingegeben wird und es wird die eingestellte Timerzeit zwischen den Eingaben gewartet, startet der Suchvorgang. Gibt man die Eingabe schnell ein, startet der Suchvorgang daher erst bei dem letzen Buchstaben. Das wäre dann eine inkrementelle suche. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:24 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-2025 by Thomas Breitkreuz