Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Frage zu den ganzen Keys (wenn ich Taste Enter drücke dann)


stefanstp - Di 29.10.02 09:22
Titel: Frage zu den ganzen Keys (wenn ich Taste Enter drücke dann)
Auf der Seite

http://delphi.about.com/library/blvkc.htm

gibt es ja eine ganze Tabelle, welche Zahl für welche Taste steht, aber irgendwie funktioniert das nicht. Weil z.b. 1B => ESC key sein soll. Delphi meckert aber, weil er nur eine Zahl haben möchte und nicht ein B. Hm?



Quelltext
1:
2:
if key= #13 then 
showmessage('Das ist die Taste '+#13);


ist die Entertaste. Aber welche Zahl muß ich bei If Key = eintragen wenn ich z.B. Den Pfeil nach Links bzw. nach Rechts auf der Tastatur möchte? Wer kann helfen?

Danke STEFAN


LCS - Di 29.10.02 10:37

Hi
die Cursor-Tasten und einige andere Tasten (STRG, SHIFT...) kannst du mit OnKeyPress überhaupt nicht abfangen, weil sie eben kein Zeichen liefern.
Dafür müsstest du OnKeyDown bzw. OnKeyUp verwenden und dort bekommst du den Tastencode geliefert. Wenn du anstelle der Codes die entsprechenden Konstanten verwendest, kann man's noch leichter lesen:

Quelltext
1:
2:
3:
4:
5:
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
   if  Key = VK_LEFT then
       ShowMessage('Cursor Left');
end;


Gruss Lothar


stefanstp - Di 29.10.02 11:00
Titel: Besten Dank!
...habe ich nicht gewußt, aber man lernt ja nie aus!

Danke STEFAN