Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TComboBox: Eingabegeschwindigkeit der "Buchstabensuche" (https://www.delphipraxis.net/65706-tcombobox-eingabegeschwindigkeit-der-buchstabensuche.html)

MaBuSE 20. Mär 2006 13:00


TComboBox: Eingabegeschwindigkeit der "Buchstabensuche&
 
Hallo,
ich habe schon in der DP gesucht, aber außer folgendem Eintrag nichts zu diesem Thema gefunden:
http://www.delphipraxis.net/internal...ct.php?t=71788

Mein Problem ist folgendes:

Ich habe eine TComboBox Komponente auf einem Formular.
Delphi-Quellcode:
with ComboBox1 do
begin
  Style := csDropDownList;
  Sorted := True;
end;
In einer mit Delphi 4 kompilierten Anwendung konnte der Benutzer durch Tastendrücke (Buchstaben) einen bestimmten Eintrag auswählen.
Angenommen ich habe in der Liste folgende Einträge:
  • Frankfurt
  • Freiburg
  • Freudenstadt
  • Fulda
  • Hamburg
  • München
  • Saarbrücken
  • Ulm
Wenn man nun "F" drückt, springt der Fokus auf Frankfurt.
Drückt man dann "U", springt der Fokus auf Fulda.

In der nun mit Delphi 7 kompilierten Anwendung verhält sich das anders:

Wenn man nun "F" drückt, springt der Fokus auf Frankfurt.
Drückt man dann "U", springt der Fokus auf Ulm.
Nur, wenn man "FU" ganz schnell tippt (<250 ms) zwischen den Buchstaben wird Fulda selektiert.

Kann man diese Zeitspanne verlängern. Die Anwender sind nicht in der Lage so schnell zu tippen. Leider wird immer wieder der Anfangsbuchstabe des nächsten Ortes ausgewählt.

Die "neue" Delphi 7 Anwendung verhält sich so wie auch der Microsoft Explorer.
Evtl. gibt es ja einen Registry Key um das Timing einzustellen.

Hat jemand eine Idee?

Vielen Dank im Voraus
MaBuSE

Quake 20. Mär 2006 13:08

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Das Problem hatte ich vor kurzem auch mit einer TDBComboBox. Ich habe mir eine neuen Komponente geschrieben bzw. die original TDBComboBox abgeändert. Da gibt es in der Methode KeyPress eine Abfrage von FLastTime>500 (ich glaube so war das) . Die 500 sind die Milisekunden bis der Filter gelöscht wird.

MaBuSE 20. Mär 2006 13:20

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Zitat:

Zitat von Quake
Das Problem hatte ich vor kurzem auch mit einer TDBComboBox. Ich habe mir eine neuen Komponente geschrieben bzw. die original TDBComboBox abgeändert. Da gibt es in der Methode KeyPress eine Abfrage von FLastTime>500 (ich glaube so war das) . Die 500 sind die Milisekunden bis der Filter gelöscht wird.

Stimmt ich habe es gefunden:
Delphi-Quellcode:
{*******************************************************}
{       Borland Delphi Visual Component Library        }
{  Copyright (c) 1995-2002 Borland Software Corporation }
{*******************************************************}
unit StdCtrls;
...
  if Style in [csDropDown, csSimple] then
...
  else
  begin
   if GetTickCount - FLastTime >= 500 then
      FFilter := '';
    FLastTime := GetTickCount;
  end;
...
Hmmm, da muß ich mal schauen.

Danke für den Hinweis...

alzaimar 20. Mär 2006 14:17

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Ist das krank... (von Borland)... Da fragt man sich, ob die 'CONST' kennen...

Na ja.

MaBuSE 20. Mär 2006 14:20

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Zitat:

Zitat von alzaimar
Ist das krank... (von Borland)... Da fragt man sich, ob die 'CONST' kennen...

Eine Eigenschaft wäre mir lieber:
Delphi-Quellcode:
TComboBox.FilterTime: Integer;

DGL-luke 20. Mär 2006 14:25

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Kann man denen von Borland bestimmt sagen, vielleicht kommts dann in D2007 ;)

Quake 20. Mär 2006 14:44

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich finde sehr viele von den standard Borland Komponenten mieserabel.

Wenn es jemanden interessieren sollte ich habe hire mal meine DBComboBox angehängt.

himitsu 20. Mär 2006 15:08

Re: TComboBox: Eingabegeschwindigkeit der "Buchstabensu
 
Zitat:

Zitat von alzaimar
Ist das krank... (von Borland)... Da fragt man sich, ob die 'CONST' kennen...

Na ja.

MaBuSE zustimm ... eine Kon stante hätte man genausowenig ändern können, wie einen direkte Werte im QuellCode und 'ne variable, an die Keiner rankäme wäre genauso besch***


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:23 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