Einzelnen Beitrag anzeigen

delphifan2004

Registriert seit: 26. Nov 2004
Ort: Dresden
274 Beiträge
 
Delphi 10.3 Rio
 
#1

Verständnisfrage VCL zu Application.CreateForm()

  Alt 30. Sep 2009, 00:36
Hallo,

Bekanntlich sieht die Projektdatei von Delphi so aus:

Delphi-Quellcode:
program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas{Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Was geschieht eigentlich in CreateForm()?

Wenn ich ein Formular zur Laufzeit erzeuge, schreibe ich:

Delphi-Quellcode:
procedure Irgendwas_das_eine_tForm_erzeugen_muss;
begin
  Form1 := TForm.Create(Application)
  // ... weiterer Quellcode
end;
Aber im Hauptprogramm (in der .dpr Datei) wird Application.CreateForm() aufgerufen. Leider werde ich aus dem VCL Quellcode nicht wirklich schlau. Ich könnte evtl gezielter fragen, wenn ich den Quellcode der Methode hier veröffentlichen könnte, weiß aber nicht, ob das erlaubt ist. Könnte ich den Quellcode hier auflisten, dann würde ich gezielt nach dem Sinn und Zweck der Methoden fragen.

Was also passiert in der CreateForm() Methode? Ich besitze Turbo Delphi und so auch den Quelltext der Unit Forms, in der auch die TApplication Klasse definiert ist. Kann bitte jemand in Pseudocode erkären, was in CreateForm() passiert.
  Mit Zitat antworten Zitat