Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Tastendruck Eingabe In ComboBox Verhindern (https://www.delphipraxis.net/172826-tastendruck-eingabe-combobox-verhindern.html)

terence14 24. Jan 2013 12:04

Tastendruck Eingabe In ComboBox Verhindern
 
Hallo liebe DP-Gemeinde,

ich habe auf einer Form eine ComboBox und die
Form auf KeyPreview:=True gestellt.

Wenn ich z.B. eine Taste - in meinem Fall nur
Buchstaben von A bis Z drücke, will ich auf
diese Taste reagieren können.

Da sich aber NUR eine ComboBox auf meinem
Formular befindet, wird der Buchstabe jedesmal
in das Feld ComboBox1.Text geschrieben.

Wie kann ich das verhindern?

MfG,
terence

Volker Z. 24. Jan 2013 12:24

AW: Tastendruck Eingabe In ComboBox Verhindern
 
Hallo,

folgendes sollte es tun.
Delphi-Quellcode:
procedure TForm4.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if UpCase (Key) in ['A'..'Z'] then
    begin
      // Mach was
      Key := #0
    end
end;
Zitat:

in meinem Fall nur Buchstaben von A bis Z drücke
UpCase funktioniert nur für diese Fälle. Wenn Du andere Keys abfangen möchtest, dann halt in der Menge angeben.

Gruß

ringli 24. Jan 2013 12:47

AW: Tastendruck Eingabe In ComboBox Verhindern
 
Stelle bei der Combobox im Objektinspektor die Eigenschaft Style auf csDropDownList. Hoffe es ist das was du meinst.

terence14 24. Jan 2013 14:44

AW: Tastendruck Eingabe In ComboBox Verhindern
 
Zitat:

Zitat von Volker Z. (Beitrag 1200453)
Hallo,

folgendes sollte es tun.
Delphi-Quellcode:
procedure TForm4.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if UpCase (Key) in ['A'..'Z'] then
    begin
      // Mach was
      Key := #0
    end
end;
Zitat:

in meinem Fall nur Buchstaben von A bis Z drücke
UpCase funktioniert nur für diese Fälle. Wenn Du andere Keys abfangen möchtest, dann halt in der Menge angeben.

Gruß

Danke Volker,

ich habe zwar die Abfrage FormKeyPress aber darin den Key
dann nicht auf Key:=#0 gesetzt.

Anfängerfehler :)

Danke Dir.

terence14 24. Jan 2013 14:46

AW: Tastendruck Eingabe In ComboBox Verhindern
 
Zitat:

Zitat von ringli (Beitrag 1200454)
Stelle bei der Combobox im Objektinspektor die Eigenschaft Style auf csDropDownList. Hoffe es ist das was du meinst.

Leider nicht, denn dann springt man zu einem Eintrag
in der DropDown-Liste, die mit dem Buchstaben der Eingabe
beginnt - und holt den Eintrag in die ComboBox1.Text Zeile.

Trotzdem Danke für Deinen Tipp.

MfG,
terence


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