Einzelnen Beitrag anzeigen

Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#1

2 Arten ein Fenster erzeugen: Welche internen Unterschiede?

  Alt 31. Aug 2006, 11:57
Hallo zusammen

welcher Unterschied besteht eigentlich zwischen den beiden folgenden Varianten, ein Fenster zu erzeugen und zu zeigen?
Delphi-Quellcode:
frmProbe:= TfrmProbe.Create(Application);
try
  frmProbe.ShowModal;
finally
  frmProbe.Free;
end;
und
Delphi-Quellcode:
Application.CreateForm(TfrmProbe, frmProbe);
try
  frmProbe.ShowModal;
finally
  frmProbe.Free;
end;
Der Grund meiner Frage:
Beide Fenster werden wie erwartet ordnungsgemäß erzeugt und geöffnet.
In dem Augenblick aber, wo ich eine Prozedur darin ausführe, stürzt mir das Fenster das mit der ersten Variante erzeugt wurde, ab.

Könnte dies etwas mit einem Elternobjekt zu haben, den das Fenster übergeben bekommt (obwohl das doch immer "Application" zu sein scheint).
Da ich mein Fenster in eine DLL auslagern möchte, kann ich es dort leider nicht mit Application.CreateForm aufrufen, da ja die DLL dieses Objekt gar nicht kennt.

Wenn ich die internen Unterschiede der beiden Varianten wüßte, könnte ich vielleicht dem Fehler auf die Spur kommen...


Weiß jemand was darüber? Danke Euch!


Gruß
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat