Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Auf Entfernen-Taste reagieren (https://www.delphipraxis.net/111807-auf-entfernen-taste-reagieren.html)

Andreas L. 9. Apr 2008 16:40


Auf Entfernen-Taste reagieren
 
Hi,
in OnKeyPress-Ereignis eines Buttons möchte ich aufs drücken der Entfernen-Taste reagieren. Wenn ich dort einfach ein ShowMessage(key) platziere wird mir ein leeres Dialog angezeigt. Bei allen anderen Tasten gehts. Der Code für VK_DELETE müsste #127 sein. Warum wird die Taste nicht erkannt?

DeddyH 9. Apr 2008 16:42

Re: Auf Entfernen-Taste reagieren
 
Versuch es mal OnKeyDown.

Progman 9. Apr 2008 16:43

Re: Auf Entfernen-Taste reagieren
 
nimm OnKeyDown und frag ab:
Delphi-Quellcode:
if Key = VK_DELETE then.....
Das müsste gehen.
Und zu beachten: Die Variable Key aus FormKeyDown ist vom Typ Word, zum Anzeigen als IntToStr(Key) benutzen. ;)

shmia 9. Apr 2008 16:44

Re: Auf Entfernen-Taste reagieren
 
Zitat:

Zitat von Andreas L.
Wenn ich dort einfach ein ShowMessage(key) platziere wird mir ein leeres Dialog angezeigt. Bei allen anderen Tasten gehts. Der Code für VK_DELETE müsste #127 sein. Warum wird die Taste nicht erkannt?

Das Zeichen #127 ist ein nicht druckbares/nicht darstellbares Zeichen. Klar, dass dann ShowMessage nichts anzeigt.

Erlkönig 9. Apr 2008 17:10

Re: Auf Entfernen-Taste reagieren
 
du kannst natürlich die taste anzeigen lassen, indem du ne if then abfrage machst
Delphi-Quellcode:
if key = vk_delete then showmessage('Die Entf-taste wurde gedrückt');

DeddyH 9. Apr 2008 17:13

Re: Auf Entfernen-Taste reagieren
 
Man kann sich auch den ASCII-Code anzeigen lassen.
Delphi-Quellcode:
ShowMessage(inttostr(Ord(Key)));


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