Mega Code Archive

 
Categories / Delphi / VCL
 

Changing the main form of an app at runtime

Question: Is it possible to change the main form of an application dynamically at runtime? Answer: It is possible to change the applications main form dynamically at runtime, but only during the applications start up. To do this, you will need to choose "View->Project Source" from the IDE's main menu, and edit the applications initialization code, changing the forms creation order in response to some condition. Note: You will need re-edit this code if you add additional forms to the project, as the IDE's code wizard will not be expecting the changes that you have made to the main project file, and you may find that the creation code for the additional forms you have added may have been inserted in an unexpected position within the code. begin Application.Initialize; if SomeCondition then begin Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm2, Form2); end else begin Application.CreateForm(TForm2, Form2); Application.CreateForm(TForm1, Form1); end; Application.Run; end.