![]() |
Ord...
Hi,
ich muss mehrmals einen Char in Word (=Taste für OnKeyDown) verwandeln. Deshalb ist alles dynamisch aufgebaut. Viele Tasten wandelt Ord falsch um, z.B. #, -, $, % und viele mehr. Das heißt es passiert nichts wenn ich in OnKeyDown z.B. if Key = Ord('#') then schreibe. Hat jemand eine Idee, wie man z.B. die genannten Zeichen auch noch korrekt umwandeln könnte ? Es kann ruhig eine andere Funktion als Ord sein, denn man kann einfach Ord und X mit einer neuen Funktion zusammenführen. |
Re: Ord...
Hallo,
ich hab mir den Wert von "#" angeschaut, er ist 35. Und so hab ich eine Prüfung gemacht:
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin If Key = #35 then ShowMessage('#'); end; |
Re: Ord...
Schau doch einfach was für eine Zahl bei Ord('#'); rauskommt und vergleiche dann direkt mit der.
Das wäre auch ein bisschen schneller von Ablauf her da die Konstante '#' nicht erst über die Funktion in eine Zahl "umgewandelt" werden muss sondern gleich als Konstante da steht. |
Re: Ord...
Hm, ob ich Key = Ord('#') oder Key = 35 ist leider kein Unterschied vom Ergebnis her.
|
Re: Ord...
wenn dann schon #35
aber bist du in KeyUp, KeyDown oder KeyPress? |
Re: Ord...
KeyDown, deshalb dachte ich an Word(#35), bringt aber nichts.
|
Re: Ord...
Hallo,
so gehts:
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); begin //Gibt die Nummer des Zeichens aus ShowMessage(IntToStr(Key)); //prüfen auf # If Key = 191 then ShowMessage('#'); end; |
Re: Ord...
Und wie kommst du auf 191 ?
|
Re: Ord...
Zitat:
Wenn du es nämlich getan hättest, dann hätte dir die erste ShowMessage beim Drücken von "#" nämlich 191 ausgegeben. |
Re: Ord...
Ah, du hast das in OnKeyDown gemacht, das habe ich übersehen. Dann ist nun alles klar, danke :)!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 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