I've been doing that kind of stuff for quite a while. Your approaches are not bad, still they may be improved a bit...
After many kind of tests, I've found that the fastest way to Initialize the form and all the objects (with "Initalize" I now mean only repositioning/resizing, not other calculations each application may need...) is to store all the positions and sizes into ONE single record, read that record when the form is created and write to that record when form is destroyed...
In between, that is when the form is visible, comes all the work to smartly reposition the objects when the form is resized. As far as I understood from your message, your problem is not in "resizing" the form and repositioning its objects, so I suppose that side works fine with you... Otherwise we can talk about that, too...
As for the objects' Initialization, I suppose that they are doing some kind of repositioning calculations "on fly" each time the form is created... I suggest to do most of those calculations at design-time, that is instead of making them calculate their positions/sizes at run-time, build yourself a program which does a similar thing, which you will run ONCE at design time, and which will return you these or those codes which you will (manually or via some automation) put into the objects' Init/Resize events. At run-time, no complicated calculations will be needed, just simple EVALUATION...
If you want to share thoughts (and/or code snippets), contact me directly...
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Loris Antonangeli, University of Oulu (Finland)
phone: +358-8-5565456, +358-40-5015645
e-mail: loris@cc.oulu.fi
http://cc.oulu.fi/~loris/loris.htmMessages FOR FREE straight to my GSM-phone - follow instructions:
1) Go to
http://www.mtn.co.za/sms/secure/text.html2) Choose Network "Finland Telecom Finland 35840"
3) Enter my gsm-phone number +358405015645
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Ennen olin epävarma - nyt en oikein tiedä...