Einzelnen Beitrag anzeigen

Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: [Kompoente] Ereignisse überschreiben

  Alt 12. Feb 2007, 15:11
Zitat von xZise:
Also ich muss KeyDown und KeyPress überschreiben bzw. etwas dazuschreiben....

1.) Und weitere Parameter füge ich einfach ein, so wie bei normalen Prozeduren?
2.) Ist "fooclick" eine Prozedur?
KeyPress zu überschreiben geht so (z.B. bei einem TEdit soll nicht der Buchstabe 'A' zugelassen werden):
Delphi-Quellcode:
type
  TMyEdit = class(TEdit)
  protected
    procedure KeyPress(var Key: Char); override;
  end;

{...}

procedure TMyEdit.KeyPress(var Key: Char);
begin
  if Key = 'Athen
    Key := #0;
  else
    inherited;
end;
Wenn Du zusätzliche Parameter einführen willst bin ich mir nicht ganz sicher, sollte aber theoretisch so gehen:
Anstatt override; verwendest Du reintroduce;.
Bei inherited; musst Du dann inherited KeyPress(Key); schreiben.
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat