RavenIV hat geschrieben:Generelle Frage:
Warum arbeitest Du überhaupt mit new?
Damit ich den Zeitpunkt der Zerstörung des Objektes selbst bestimmen kann.
Ich konstruiere mal ein Beispiel um die Frage deutlicher zu machen:
Aus dem Hauptfenster kann ich ein Suchformular aufrufen. Darin werden die Suchkriterien eingegeben und schließlich die Ergebnisliste angezeigt. Für jeden Datensatz in der Ergebnisliste kann ich durch einen Doppelklick eine Detailformular anzeigen. Mehrere Detailformulare sollen gleichzeitig offen sein. Wird das Suchformular geschlossen, bleiben alle Detailformular geöffnet.
Wie würde ich vorgehen?
Die Detailformulare müssen in einem Controller außerhalb des Suchformulars erzeugt werden. Im Controller habe ich eine Liste mit Pointern auf die Detailformulare. Nur: wie kann der Controller den Speicherbereich freigeben, wenn der Benutzer ein Detailformular schließt? Ich will das ja nicht erst im Destruktor des Controllers machen. Der bleibt ja am Leben solange die Anwendung läuft und zwischenzeitlich kann der Benutzer ja 1000 Detailformular geöffnet und wieder geschlossen haben.