MDIform flickering

04-14-2003, 03:01 PM
I have an MDIform that contains 10 child forms. Some of these child forms have ssTab controls on them with 6 tabs, some of which have their own tabs, etc... in the end some of the forms are heavily laden with controls.
In my startup routine for the MDIform I set each child form left and top to 0. Then I show the form I want to be displayed at startup and hide all the others.
When I actually run the program, in the first second I can see all the other forms being loaded in, with lots of outlines of controls, before the final startup form comes up inside the MDIform. This is fairly ugly and looks unprofessional. I haven't even begun to fill in the loading of data into the flexgrids, listboxes, etc... on some of these child forms, which I assume will make them take longer to load.
So is there some way I can load the MDIform, load the form I want displayed on startup and display it, then behind that one go through and load the others. One option I thought of was to make the startup object a progress bar form that is seperate from everything else and then not display the MDIform at all until everything is loaded, but is there a way to do this without the progress bar?


04-14-2003, 10:34 PM
You can load the forms without displaying them. Just do:

Load frmChild1
Load frmChild2

That will get the process intensive part out of the way. When you want to show them, just do:

frmChild1.Move 0,0, frmChild1.Width, frmChild1.Height

04-15-2003, 07:18 AM
I figured out the solution. I never noticed it before, but the MDIform has a property called "AutoShowChildren" which is set to true by default. I set it to false and now it loads all the child forms in before showing the MDIform at all.


EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum