![]() |
Fehler beim Form.Close
Hi,
ich habe eine MDIForm und ein MDIChild, welches ich zur Laufzeit so erstelle:
Code:
Da ich aber kein MainMenu habe und somit das einzelne Child nicht schliessen kann wenn es maximiert ist, habe ich mir ein Image genommen, welches
Application.CreateForm(TForm1, Form1);
Code:
onClick beinhaltet.
Form1.Close;
Es funktioniert auch wunderbar. Wenn ich jedoch die Form 2 mal hintereinander öffne, und dann die forms schliessen will, schmiert er mir bei der 2. Form ab. Dieses Problem tritt NICHT auf, wenn ich das X von dem SystemMenu verwende (wenns halt nicht maximiert ist). Da aber alle Child maximiert sein sollen und ich kein MainMenu haben möchte, geht es für mich nur mit einem Button/Image. Wie also muss ich die Form über das Image schliessen, dass er nicht beim 2. mal sich aufhängt? Fehlermeldung: "Zugriffsverletzung bei Adresse 00000000. Lesen von Adresse 00000000." Beim OnClose steht bei mir ausserdem noch
Code:
damit die Form auch wirklich geschlossen wird.
Action:=caFree;
Danke... Greetz Nils |
Re: Fehler beim Form.Close
Hi,
wird Form1 öfters erzeugt? Oder bekommt jedes Form einen eigenen Namen? Evtl. hilft beim Schließen statt form1.Close ja MainForm.ActiveMDIChild.Close Gruß Stephan :dance: |
Re: Fehler beim Form.Close
Hy
probier mal das Childform so zu erstellen:
Delphi-Quellcode:
form:=Tform.Create(self);
form.Show; in den Projekt Options enferne das Form (Autocreate Forms). |
Re: Fehler beim Form.Close
musst du nicht noch das form freigeben oder irr ich mich? :gruebel:
|
Re: Fehler beim Form.Close
Zitat:
wenn im OnClose Action:=caFree gesetzt wird, wird's ('automatisch') freigegeben. Gruß Stephan :dance: |
Re: Fehler beim Form.Close
Zitat:
Nein es gibt keinen eigenen Namen. ActiveMDIChild.Close hat den Fehler behoben, danke. Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz