Danke Sharky,
so drehe ich mich nicht mehr im kreis
was ich erreichen will ist, das ich die Forms bei bedarf erzeuge, benutze und wieder freigebe, die Forms lade ich in LMDFormDisplay, keine modale Forms.
Es kommt da vor das hin und wieder die fehler Meldung: Adresse 00000 kommt und das blöde ist, es ist nicht immer bei der gleiche form, sondern nach zufall, daher wollte ich wissen wie ich es besser, sichere machen kann das diese fehler meldung nicht mehr kommt.
Ich habe 5-6 Forms die immer geladen sind und die andere bei bedarf und gebe die frei mit cafree.
hier mit steuer ich das laden von den Forms:
Delphi-Quellcode:
procedure Tform1.DisplayForm(i: Byte); //LMDFormDisplay VLC
var // ist änlich wie frames
tmpc: TForm;
tmpf: TCustomForm;
begin
tmpf := fd.ActiveForm;
if tmpf <> nil then tmpf.Close;
case I of
0: begin
tmpc := Artikel; <--- wir gleich am anfang erzeugt und wird nur am schluss entfernt
end;
1: begin
Form3 := TForm3.Create(nil); <--- bei bedarf
tmpc := Form3;
end;
....
....
33: begin
Form33 := TForm33.Create(nil);<--- bei bedarf
tmpc := Form33;
end;
else
tmpc := nil;
end;
if tmpc <> nil then
begin
FD.AddForm(tmpc, true);
end
else
FD.AddForm(Artikel, true);
end;
was kann ich machen?
danke