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 FormKeyPress will nicht? (https://www.delphipraxis.net/158334-formkeypress-will-nicht.html)

schneidc 14. Feb 2011 08:43

FormKeyPress will nicht?
 
Hallo!

Ich würde gerne eine Form durch Druck der ESC-Taste schließen, allerdings schaffe ich es nicht irgendwelche Tastendrücke in der Form abzufangen. Ich habe hier im Forum gesucht und folgendes einfache Beispiel gefunden. Allerdings klappt es auch hier nicht und es wird bei Tastendruck nie eine Message angezeigt.

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  KeyPreview := True;
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  ShowMessage( Format( '%d', [ Key ] ) );
end;

end.
Woran kann es liegen, dass keine Tastendrücke erkannt werden?

Gruß
Simon

DeddyH 14. Feb 2011 08:46

AW: FormKeyPress will nicht?
 
Hallo und Willkommen in der DP :dp:,

hast Du den Code evtl. nur kopiert? Sind die Methoden auch im Objektinspektor mit den Ereignissen verknüpft? In dem Fall sollte es nämlich funktionieren.

schneidc 14. Feb 2011 09:10

AW: FormKeyPress will nicht?
 
Tatsächlich, es war nur die FormCreate-Methode eingebunden. Jetzt gehts, danke für den Tipp :-D


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