How do I make my Program Resolution Independent

I'm developing an application in VC++5.0 using MFC. My application is Form based (Forms are created using CFormView class) and I switch from one form(view) to another using the push button controls on the Form.My problem is that  when I run the program under different resolutions, it's appearence changes. The form(view)s  covers the entire screen (i.e.,I have maximised the Main Frame window and MDI child windows using appropriate functions), but the controls on the form don't grow or shrink proportionally. So, it gives a very ugly look to my application when run under a different resolution. I have developed the application at 800* 600 display resolution and it's MDI based Document View application.
akshayaAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

RONSLOWCommented:
There is a shareware (I think) library called NSViews that does automatic resizing/moving of controls when views/forms/dialogs change in size.

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
akshayaAuthor Commented:
Thanks Mr. Ronslow . I have already developed the application and it's running fine. I only need to fix the resolution problem. But, if I adopt your solution, I may have to rewrite the entire application using the NSViews library that you have suggested. My application is a big one consisting of odd 20 or more forms and it would be a very tedious task to rewrite the entire thing. Do you have any other suggestion? Please help.
0
RONSLOWCommented:
If you know your dialog looks fine at 800x600 and you detect you are running at, say, 400x300, then you could simply go thru each child window of the view (ie. the controls) and get their positions and scale the size and/or position accordingly.  This is effectively what the NSViews library does.. only it gives you more control over how each control is effected by a change in size.

0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
System Programming

From novice to tech pro — start learning today.