Slow Display of Forms...

Grandpa0594

New member
Joined
Nov 6, 2009
Messages
2
Programming Experience
10+
You probably have heard this one before but it’s been plaguing me for a number of years now. I write a lot of data entry programs. I will usually create a form as a MDI container and then call the data entry routines from there. I call the data entry forms using:
Dim ParkingTicketMaintenance As New ParkingTicketMaintenance
ParkingTicketMaintenance.MdiParent = Me
ParkingTicketMaintenance.Show()

The forms I use normally have maybe 4 or 5 panels in them with 8 to 10 text boxes/combo boxes and corresponding labels in each panel, so about maybe 40 controls per screen. The problem I have is that when the called form displays, even on high-end units with fast processors, 2 Gigs or more memory, and 1 Gig display cards, it takes about a second or two to display all the controls. I’ve noticed however that when I use ShowDialog to display the data entry form, it’s like night and day. It’s still not perfect but it’s much, much better. The problem with ShowDialog is the called form does not stay within the MDI container.

Any ideas would be greatly appreciated.
 
I'm not sure what it is that you are looking for.

What kind of problem does it present for the user if the form does not stay within the MDI container?
 
For the sake of comparison, what's performance like if you call Show rather than ShowDialog but without setting the MdiParent? The reason I ask is that I'm wondering whether it's specifically the fact that it's an MDI child form laden with controls that's the issue.
 
The reason why I wanted the child forms within the main application is so that my applcation stays together rather than having these child forms floating all over the user's screen. I know other application I have such as Quickbooks, Quicken, etc. keep their child forms withing the main MDI container.

To answer the second question, the speed is affected by not setting the main application as a MDIParent. However, when I minimize the child form and bring it back up, I get my delay again. I'm surprised this hasn't happened to others. It happened on VS 2003, VS 2005, and VS 2008. If you create a parent form and then a child form with about 40 text boxes and 40 labels on it you'd may very well see the same thing, but I have other "canned" programs I've purchased this does not happen with.

The way it appears is that even though the text/combo boxes have a white background, when it comes up those text boxes maintain the background color of the screen for just a second until all the controls are displayed.

Thank you...
 
Back
Top