Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Schliessen eines Formulars (https://www.delphipraxis.net/32297-schliessen-eines-formulars.html)

XaRidA_THEONLY 21. Okt 2004 13:09


Schliessen eines Formulars
 
Hallo zusammen.

Hab mal ne frage,

ich hätte gärne, dass mein Formular sich beim drücken von ALT+F4 und
ESC schliesst. Wie mache ich das???

Thanks XaRidA :angel:

mirage228 21. Okt 2004 13:10

Re: Schliessen eines Formulars
 
Hi,

Alt+F4 sollte von Windows her automatisch gehen.

Für ESC musst du das OnKeyPress bzw. OnKeyUp Ereignis behandeln und auf die ESC Taste prüfen.
Setze dann zudem die Eigenschaft KeyPreview vom Form auf True ;)

mfG
mirage228

Steve 21. Okt 2004 13:12

Re: Schliessen eines Formulars
 
Hi,

bei ALT+F4 sollte sich das Formular eh schließen :)
Für Esc ist eine Möglichkeit folgende:
Form1.KeyPreview auf true setzen, im OnKeyDown/Up Ereignis prüfen, ob Esc gedrückt wurde (Delphi-Referenz durchsuchenVirtuelle Tastencodes) und dann Close aufrufen :)

Gruß
Stephan :dance:

roderich 21. Okt 2004 13:15

Re: Schliessen eines Formulars
 
statt OnKeyDown/Up kann man auch OnKeyPress verwenden.

oder, was mir besser gefallen würde, ein PopupMenu verwenden, Menueeintrag "Beenden" mit Hotkey Escape eintragen und im OnClick ein Close

Roderich

XaRidA_THEONLY 21. Okt 2004 13:16

Re: Schliessen eines Formulars
 
Wie kann ich das auf die ESC Taste prüfen??


XaRidA :angel:

ste_ett 21. Okt 2004 13:18

Re: Schliessen eines Formulars
 
Asciiwert für ESC ist 27.

Steve 21. Okt 2004 13:19

Re: Schliessen eines Formulars
 
Der Parameter Key in OnKeyXXX gibt an, welche Taste gedrück wurde.
Virtuelle Tastencodes sind Konstanten für die Tasten, z.B. auch "VK_ESCAPE"


edit: Ich persönlich kann mit "IF Key = VK_ESCAPE" mehr anfangen als mit "IF Key = 27" .. ;)

Gruß
Stephan :dance:

Matze 21. Okt 2004 13:21

Re: Schliessen eines Formulars
 
Hier mal schön mit Delphi-tags: *pingeligbin* :tongue: :mrgreen:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_escape then Application.MainForm.Close;
end;

XaRidA_THEONLY 21. Okt 2004 13:28

Re: Schliessen eines Formulars
 
Hey merci,

das funzt super. :thumb:

Thanks XaRidA :angel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz