Thema: Delphi Application oder self

Einzelnen Beitrag anzeigen

Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#2
  Alt 30. Apr 2003, 12:33
Hallo,

so ganz schlau werde ich aus Deinen Schilderungen nicht.
Aber ich versuche trotzdem mal was loszulassen.

zu 1) Der Parameter Sender tritt für gewöhlich bei EventHandler auf.
Damit ist es möglich das sendende Objekt zu indentifzieren.
Das Objekt, dass das Event feuert übergibt dafür im Sender-
Parameter den impliziten Paramter Self.
Jeder Methode eines Objektes wird implizit der Paramter Self
übergeben. Auch wenn die Methode keine "sichtbaren" Paramter
erwartet.
Beispiel:
Delphi-Quellcode:
procedure TMyObject.DoEvent;
begin
  If Assigned(FOnMyEvent) then
    FOnMyEvent(Self) // Event abfeuern
end;
Niemand zwingt einen hier den Parameter Self für den Sender-
Parameter zu verwenden. Da aber alle Welt hier Self erwartet sollte
man Self übergeben.

zu 2) Bei Application handelt um eine automatisch erzeugte Instanz
von TApplication. Jedes Delphi Programm, das auf der VCL aufbaut erzeugt/verwendet automatisch eine Instanz dieser Klasse. TApplication
bildet das sog. Anwendungsobjekt bzw kapselt das Programm in Richtung
Windows. Application verwaltet auch ein eigenes Fenster, dass normaler-
weise jedoch unsichtbar bleibt. D.h. das Application als Paramter
(im Rahmen Deiner Fragestellung) eigentlich keine Rolle spielt.

Innerhalb von Winsight ist TApplication sichtbar !!!
  Mit Zitat antworten Zitat