AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi DBLookupComboBox und Tastatureingabe?
Thema durchsuchen
Ansicht
Themen-Optionen

DBLookupComboBox und Tastatureingabe?

Ein Thema von davar · begonnen am 19. Sep 2006 · letzter Beitrag vom 24. Sep 2006
Antwort Antwort
davar

Registriert seit: 4. Feb 2005
311 Beiträge
 
Turbo Delphi für Win32
 
#1

DBLookupComboBox und Tastatureingabe?

  Alt 19. Sep 2006, 16:27
Datenbank: MySQL • Version: 4.x • Zugriff über: Zeos
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
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#2

Re: DBLookupComboBox und Tastatureingabe?

  Alt 20. Sep 2006, 07:21
Muss das unbedingt DBLookupComboBox sein ?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: DBLookupComboBox und Tastatureingabe?

  Alt 20. Sep 2006, 07:48
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
  Mit Zitat antworten Zitat
davar

Registriert seit: 4. Feb 2005
311 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: DBLookupComboBox und Tastatureingabe?

  Alt 20. Sep 2006, 10:33
Zitat von marabu:
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


Bei mir geht es überhaupt nicht.. Nicht mal der erste Buchstabe..

@Karstadt:

Was wäre denn z.B. eine Alternative?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: DBLookupComboBox und Tastatureingabe?

  Alt 20. Sep 2006, 11:33
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
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#6

Re: DBLookupComboBox und Tastatureingabe?

  Alt 20. Sep 2006, 11:50
TDBCOMBOX
  Mit Zitat antworten Zitat
davar

Registriert seit: 4. Feb 2005
311 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: DBLookupComboBox und Tastatureingabe?

  Alt 24. Sep 2006, 10:13
Zitat von marabu:
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
Also es scheint ja gar nicht mal so schwer zu sein, aber das mit dem Ticker habe ich nicht verstanden. Wie genau soll ich das machen?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: DBLookupComboBox und Tastatureingabe?

  Alt 24. Sep 2006, 10:35
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:
begin
  if (GetTickCount - FSearchTicks) > SearchTimeOut then
    FSearchText := '';
Viel Erfolg

marabu
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz