Zitat:
Wenn ich manuell das ereignis KeyDown abfrage passiert auch nichts.
Also ich habe die Taste Entf abgefragt und wenn diese gedrückt ist sollte ein ereignis starten, aber nichts passiert
In meinem Code wird ein Ereignis zum Leben aufgerufen, und dabei wird Caption von dem Formular auf eine Random Zahl geändert.
Mach es so:
Delphi-Quellcode:
type
TMyEdit =
class(TEdit)
procedure WMKeyDown(
var Message: TWMKeyDown);
message WM_KEYDOWN;
end;
TForm1 =
class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
MyEdit : TMyEdit;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TMyEdit.WMKeyDown(
var Message: TWMKeyDown);
begin
// etaws damit man FeedBack bekommt
if Message.CharCode = VK_DELETE
then Self.Color :=
RGB(Random(256),Random(256),Random(256));
inherited;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MyEdit := TMyEdit.Create(self);
MyEdit.Parent := Self;
MyEdit.Visible := True;
MyEdit.Top := 10;
MyEdit.Left := 10;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
MyEdit.Free;
end;
Statt TEdit nehme TSynEdit. Sollte funktionieren.