Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Forms direkt oder zur Laufzeit erzeugen ?

  Alt 21. Sep 2003, 08:45
Zitat von Hansa:
Wieso schneller ? Wenn die Formulare im Speicher vorhanden sind, was geht da noch schneller ? Außerdem muß man sich doch auch selber drum kümmern, den Speicher wieder freizugeben. Aber noch eine andere Frage: Wovon hängt es ab, wieviel Speicher die Dinger brauchen ? Tja, ich habe hier zig Programme und das soll irgendwann mal eins werden, deshalb stellen sich langsam diese Fragen.
Angenenommen Du hast im OnCreate der Formen "Zeitintensive" Dinge wie z.B. das öffenen einer Datenbank inkl. Verbinden und ausführen einer Abfrage. Wenn dies nun in jeder Form wäre und jede Abfrage nur 200ms braucht kannst Du ausrechnen wie lange es dauert bis deine gesamte Anwendung fertig gestartet ist.

Eas mit dem Freigeben vom Speicher ist ja nicht so wild. Ich erzeuge auch alle Fenster zur Laufzeit.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 window : TForm2; // Kunden-Formular
begin
 window := TForm2.Create(self);
try
 with window do
  //z.B. Übergabe von Werten an Variabeln die im Public-Teil stehen
  kunden_id := xxx;
  modus := sb_readonly;
  ShowModal
finally
  FreeAndNil(window);
end;
Wieviel Speicher ein Fensterbenötigt ist wohl in ersterlinie von den Komponenten, Variablen und evnt. Images abhängig die in der Form verwendet werden.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat