![]() |
Tasten druck!
Hallo,
ich hab da mal wieder ne Frage: Wie kann ich durch einen Tastendruck z.B. Enter ein Ereigniss (z.B. OnClick) auslösen? |
Bei den meisten visuellen Komponenten passiert dies automatisch, da ist es eher ein Problem dies nicht ausführen zu wollen (TCheckbox z.B).
Ansonsten kannst du in OnKeyDown ja einfach auf deine onclick-Prozedure verweisen. |
da gibts beim button eine eigenschaft.
"default"...die auf true stellen. dann wird bei selektierter komponente das on-click ausgelöst (mit enter-taste).......bei reaktion auf escape-taste musst du die cancel-eigenschaft auf true setzen!! gruss haegar |
Hallo,
stelle im OI, für Form1, das KeyPreview auf True. Schreibe folgendes im KeyDown:
Delphi-Quellcode:
Wird nun also Enter gedrückt, so wird z.B. die OnClick-Prozedur eines Buttons ausgelöst.
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); begin if Key = 13 then Button1Click(Sender); end; Grüsse, Daniel :hi: |
Danke! Werde es gleich mal ausprobieren! Bin ja immer erstaunt wie schnell man hier super Antworten bekommt! Weiter so!
|
Wie krieg ich denn raus welche Nummer eine Taste hat???
Zum Beispiel "a". Kann man das berechnen oder :wiejetzt: Thx! MfG Florian |
kann man.
Delphi-Quellcode:
ord(a)
|
Dann nimm aber besser gleich OnKeyPress. da bekommst du die Taste al Char geliefert.
|
dgeht die enter-Taste denn dabei?
|
#13
Aber was spricht dagegen auf Enter in OnKeyDown zu reagieren und auf die anderen tasten in OnKeyPress? :roll: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:10 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