I'm developing a small application that has a few button and labels. On my development PC it fits on the window, but on other machines the controls of forms get smaller. My screen resolution is 1680x1050 and client screen solution is 1024x768. Is it possible to make controls auto fit the screen solution?
Every language I know of has some way of contacting the OS and requesting the resultion of the user's screen. This is not true in web applications (or at least not always), but it is definitely true in "standard" applications.
With a windows forms (.NET) application, for example, you can set the state to Maximized and the app will fill the screen. You can also query resolution and set the size based on the user's resolution, or a portion of that (75% for example).
The problem here is are you .NET, Java? Are you running on windows, mac, linux? Without further information, nobody can chart your course through this "nightmare".
In the .NET world, you can query the resolution (and other things) using:
SystemInformation.PrimaryMonitorSize
and that returns you a pair of integers, I believe, in the Size return value that will tell you the dimensions in pixels.
If you've developed your forms smartly - utilizing layouts and expecting the program might run on different resolutions, you can take that info and keep the display looking correct.
Hope that helps.
You can use anchoring and docking to size the controls to fit the screen. You can also put them in a panel with scrolling enabled. However, it might be a better idea to design the app around the resolution that the users will use. You can use tabbed dialogs, etc to have fewer controls on the screen at once. The more controls you put in front of the user, the more difficult they will think your app is to use.
We have excellent experience with a DevExpress component that can help you with sizing of controls: Layoutcontrol. It makes your forms size well on all screen sizes and resolutions. It takes a while to master, but once you get it... it completely changed the way we create our interfaces (in Delpft VCL, but it works the same for .net)