Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Application.CreateForm

  Alt 24. Nov 2007, 08:56
ist ganz einfach.
Stell dir einen Constructor als Funktion vor.
Wenn du folgendes aufrufst:
Instanzvariable := Funktion_Gib_mir_Instanz(); so bekommt die Variable Instanzvariable den Wert erst zugewiesen wenn die Funktion zurück gekehrt ist.

Jetzt wird aber bei Forms das OnCreate aufgerufen und das im Constructor. Das heißt man könnte im Construktor nicht auf die Variable Form1 zugreifen weil diese ja erst ihren Wert bekommt wenn der Constructor zurück kehrt. Dadurch das aber bei CreateForm erst der Speicher angefordert und der Variablen zugewiesen wird, und dann erst der Constructor aufgerufen wird kann man innerhalb des Constructors bereits auf die Variable zugreifen.

Zugegeben wäre mir es lieber wenn dies nicht ginge denn es ist nicht im Sinne der OOP das man auf eine globale Variable zugreift wenn man ebenso mit Self arbeiten kann.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat