![]() |
Eingabe von "ß" "ä" und "<"
Hallo erst mal ...
hätte ne kurze Frage ... ich hab grad n Programm in dem ich die Eingaben nach folgendem Prinzip erfasst ... Hier mal der Code (Delphi 6 Personal)
Delphi-Quellcode:
Jetzt möchte ich für der Programm auch die Tasten "ß", "ä" und "<" nutzen ... jedoch weiss ich die VK_ aliase dafür nicht ...
procedure TQuiz.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); begin {if key = VK_F1 then ... Oder gibt es vielleicht sonst eine Möglichkeit die Eingaben auf diese Weise zu erfassen ohne VK_ zu benutzen ? Möchte hald irgendwie mit dem oben beschriebenen "System" die Tastendrücke der Tasten "ß", "ä" und "<" zusätzlich mit einbauen. Muss ja irgendwie gehen oder ? Man muss doch eigentlich jedes Taste die es auf der Tastatur gibt auch verwenden können ... Vielen Dank für die Hilfe schon mal mfg Spawni |
Re: Eingabe von "ß" "ä" und "<&a
einfach mal selber testen, was da ankommt, wenn du was drückst :zwinker:
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); begin Memo1.Lines.Add(Format('%d %d', [Key, Byte(Shift)])); end;
Delphi-Quellcode:
//also bei minem Tastaturlayout und was sonst noch darauf Einfluß hat
if (Key = 219) and (Shift = []) then {ß} if (Key = 222) and (Shift = []) then {ä} if (Key = 226) and (Shift = []) then {<} OnKeyDown dürfte auch nur eine Weiterleitung von WM_KEYDOWN sein. schau dir mal Folgendes an (siehe MSDN) Zitat:
|
Re: Eingabe von "ß" "ä" und "<&a
Vielen Dank für die schnelle Antwort ... funktioniert super so ...
Wo bekommt man denn die "Zahlenwerte" der einzelnen Tasten her ? Gibts da irgendwo ne Tabelle von dem Zeichensatz der da verwendet wird wo man die Werte rauslesen kann ? Weil die ASCII-Werte der Zeichen scheinen es ja net zu sein ... die hab ich gestern ja schon versucht und in der ASCII-Tabelle stehen bei den entsprechenden Dezimalwerten ganz andere Zeichen ... Das mit der Tabelle ist nur rein Interessehalber ... was ich erreichen wollte funktioniert ja jetzt ... ;) Vielen Dank nochmal ... |
Re: Eingabe von "ß" "ä" und "<&a
Ok, hat sich erledigt ^^ ... sollte mal mein Hirn einschalten am Morgen :wall: :wall: :wall:
Hab das ganze nochmal gründlich durchdacht und bin jetzt drauf gekommen das man sich mit nur n paar Zeilen Code n Programm bauen kann das einem die für Delphi nötigen Dezimalwerte jeder einzelnen Taste beim drücken anzeigen kann. |
Re: Eingabe von "ß" "ä" etc.
virtual keys sind direkt die codes, die von der tastatur kommen. der code von himitsu wird auf anderen keyboard-layouts wohl nicht funktionieren!
Wenn du Delphi 2005 oder höher hast, solltest du ![]() ![]() Irgendwie sollte die WinAPI diese Keystates aber auf ASCII (bzw. den OEM-Zeichensatz) mappen können, da gibts sicher Funktionen. |
Re: Eingabe von "ß" "ä" und "<&q
Hallo,
es gibt zwar VK_A, aber nicht VK_Ä oder VK_AE, man bräuchte ja bei weltweitem Einsatz ungeheuer viele solche Codes. Unter Windows werden die nationalen Sondertasten mit VK_OEMx kodiert, die Zuordnung hängt aber vom aktuellen Tastaturtreiber ab. Zur Umsetzung gibt es die Funktion VkKeyScan, d.h. VkKeyScan ('Ä') liefert den zugehörigen VK_ Code. Gruss Reinhard |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:06 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