
Forms within TabStrip and one overtaking entire form
Quote:
> I was wondering if you can advise on any path that would be better to
folow?
> Can you also explain to me when should I do when should I use a SDI or an
MDI?
> You stated people use MDI in a way that wasn't meant to be. I don't quite
> understand what you mean. Can you clearify this a little for me. I am new
to
> VB ( have used it now for almost 6 months ). Thanks
It all depends on how you want the app to behave. You mention that there are
30 different screens. Should only one screen be available at one time, or
would it be good if the user could see multiple screens? I mean, have you
ever had multiple workbooks open under Excel and used the Window menu to
tile or cascade them so that you could see two or more at a time? Do you
want your app to be able to do this? If so, make it MDI but make the
individual screens MDI child forms and load them into their own window. MDI
was specifically designed to do this sort of thing and it isn't always
cooperative when you try to make it do anything else.
If you would prefer that your app behaved like Outlook, where you can't, for
example, see your Inbox and your Contacts at the same time, then I would
recommend going with an SDI (i.e., not MDI) interface and using SetParent()
to place the "sub-forms" under the control of the main form. I'm writing an
app right now that does this.
If you want to go MDI but you still want the tab strip for easy switching
between windows (a la UltraEdit), then place a picture box on the MDI parent
form and put a tab strip control in it. The child forms will then fill the
remaining area of the parent.