![]() |
Zugriffsverletzung bei dynamisch erstellten Forms
Ich habe folgendes Problem:
Ich will Forms dynamisch in einer Prozedur wie folgt erstellen:
Delphi-Quellcode:
Das funktioniert auch.
procedure TFMain.ShowFM(FormName);
var FFormClass: TFormClass; FForm: TForm; begin FFormClass := TFormClass(FindClass('T'+FormName)); FForm.Name:=FormName; ... FForm.Visible:=True; end; Diese Forms wurden bisher in der klassischen Form erstellt: Application.createForm(TFSTL,FSTL); In dieser Form lief bisher alles. In der dynamischen Form habe ich das Problem, dass ich eine Zugriffsverletzung bekomme, wenn ich ein Control innerhalb des Forms anspreche (Edit1.Text:='blah..'), der Rest funktioniert. Woran kann das liegen. [edit=sakura] [delphi]-Tags. Mfg, sakura[/edit] |
Re: Zugriffsverletzung bei dynamisch erstellten Forms
Zitat:
Dir fehlt was:
Delphi-Quellcode:
Procedure TFMain.ShowFM(FormName);
var FFormClass: TFormClass; FForm: TForm; begin FFormClass := TFormClass(FindClass('T'+FormName)); FForm := FFormClass.Create(nil); // <================================= FForm.Name:=FormName; ... FForm.Visible:=True; end; |
Re: Zugriffsverletzung bei dynamisch erstellten Forms
Sorry, hab natürlich einen Befehl vergessen! :oops:
Delphi-Quellcode:
Mit deiner Variante klappts aber auch nicht.
Procedure TFMain.ShowFM(FormName);
var FFormClass: TFormClass; FForm: TForm; begin FFormClass := TFormClass(FindClass('T'+FormName)); Application.createForm(FFormClass,fForm); FForm.Name:=FormName; ... FForm.Visible:=True; end; [edit=sakura] [delphi]-Tags Mfg, sakura[/edit] |
Re: Zugriffsverletzung bei dynamisch erstellten Forms
|
Re: Zugriffsverletzung bei dynamisch erstellten Forms
Zitat:
Roderich |
Re: Zugriffsverletzung bei dynamisch erstellten Forms
Das scheint die richtige Spur zu sein. Ich kann zwar auf FForm zugreifen aber self ist nil!!
Was sehr merkwürdig ist: Ein anderes Form, welches auf die gleiche Weise aufgerufen wird, funktioniert und self ist im Zugriff :gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 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