Modifying Layout on Multiple Platforms

Modifying Layout on Multiple Platforms

You can use the Toolkit’s getScreenSize().width to recompute the size of a component at run time. For example, if you have a Frame that is supposed to have the screen’s height, given the int umx by the previous method, you can compute the height of the Frame like this: 600*umx/800. This means, on a 800*600 screen: 600 * 800 / 800 = 600 and on a 640*480 screen: 600*640/800 = 480.

If you only want the Frame’s height to be 400 on an 800*600 screen (half the screen width), you can compute it like this: 400 * umx / 800. This will completely ignore the fact that your neighbor has a computer with a 1024*800 screen. The size will still be 400*1024 / 800 which equals 512, or half the screen’s width. You can use this trick for any layout problem, but be careful using it on Fonts. It will make letters appear less solid on screens with lower resolution.

 // This sample program just creates an empty whole-screen Frame on anyscreenimport java.awt.*;public class WholeScreen extends Frame{ int umx; public static void main(String args[]) { WholeScreen ws = new WholeScreen(); } public WholeScreen() { //gets the umx value - the width of the current screen: umx = this.getToolkit().getScreenSize().width; //sets the size of this Dialog to 800,600 on a 800*600 screen // and ((800*640 / 800), (600*640 / 800)) = 640, 480 on a 640 * 480screen // etc setSize(800*umx/800, 600*umx/800); setVisible(true); }}
See also  5 Tips for Choosing the Right Medical Software for Your Practice

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist