Einzelnen Beitrag anzeigen

Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#1

gemeinsamer Event Handler für viele Objekte?

  Alt 28. Mär 2005, 18:46
Hi,
Ich habe auf meinem Formular ca. 40 Edit Felder in die aber nur Zahlen eingegeben werden dürfen. Jetzt möchte ich nicht für jedes einzelne ein eiegenes onChange Event deklarieren, sondern das ganze lieber pauschal lösen.
In meinem Buch Delphi 7 - Grundlagen und Profiwissen wird das so gelöst:

Delphi-Quellcode:

var edField: TEdit;
...
procedure TForm1.EditClick(Sender: TObject); (* gemeinsamer Event-Handler für
                                                 alle Editierfelder *)

begin
 edField:=TEdit(Sender); (* auf dieses Feld wurde geklickt *)
 edField.Color:=clYellow (* gelbe Markierung *)
 (* edField.Free geht leider hier nicht, da eine Komponente nicht innerhalb ihres
    eigenen Event-Handlers entfernt werden darf!!! *)


end;
allerdings müsste das ganze dann doch tierisch ressourcen verbrauchen, wenn jedesman wenn das Event auftritt ein neuer Zeiger erstellt wird der auf das Objekt zeigt oder nicht? Die Zeiger werden ja nicht entfernt, oder hab ich da etwas falsch verstanden?
Ich bin nicht so ganz fitt in Objektorientierung.


schonmal danke für eure hilfe
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat