Einzelnen Beitrag anzeigen

jaikai

Registriert seit: 1. Jun 2005
70 Beiträge
 
#3

Re: Stringlisten innerhalb MDI-Child

  Alt 5. Sep 2005, 17:19
Hi,

die HauptAnwendung (wird) eine ganze Anzahl von Childs erzeugen, und jede dieser Listen soll (Bsp. über FindComponent) innerhalb des MDI-Childs abrufbar und verfügbar sein.

Folgendes führt zum Error, sofern mehrere MDI's erzeugt werden und dann über Button (close) geschlossen wird. Somit zerbricht als Folge meine intern Verwaltung, weil Listen deklariert aber nicht mehr da sind. (Das mit dem Nicht-mehr-da-sein ist relativ, ich glaube, daß sie nicht da sind, gegencheck über FindComponent und auf MDI_HilfsList.Count zeigt mir für alle MDIChilds stets den gleichen Wert an über FindComponent. Die logische Ursache dafür ist mir schleierhaft)


Delphi-Quellcode:
// alles aus dem MDI-Child

var
  MDI_HilfsListe : TStringlist;
  BlockListe : TStringlist;


procedure TMDIChild.FormCreate(Sender: TObject);
begin
  // ...blabla...
   MDI_HilfsListe := TStringlist.Create;
   BlockListe := TStringlist.Create;
end;


//

procedure TMDIChild.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 { MDI_HilfsListe.free;
  BlockListe.free;
  ... ist egal ob in  TMainForm.FormDestroy oder hier
  ... Ab zweitem MDI Schließen ist diese Liste defacto nich mehr greifbar   
      und führt zum Error   
}


 Action := cafree;
 MainForm.Timer1.Enabled := true; // unwichtig ... regelt Anordnungen
 MainForm.update;       // unwichtig ...
end;
Wobei ich nicht begreife, warum die lokale Aneweisung im Child eine MainForm-Komponente wird...?!?

Danke
Wenn die Programme das machen, wie's wir machen, wären sie unbrauchbar...
  Mit Zitat antworten Zitat