问题
i have been working on a Swing application that has a JFrame as principal Frame and it contains a lot of JInternalFrames inside of it , and when i installed it in every computer in the company, it seems that some computers screen size is lower and more tight then the screen in wish i had developed my application, and that is not useful, so i am asking if i can adjust my application (Frames) to every kind of screen size, i am using Swing API.
Thank you.
回答1:
You can check the size of the screen like this:
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
Then you can decide how much of the screen you want to cover. Say half the size of the screen.
int h = screen.height / 2;
int w = screen.width / 2;
Then set your JFrame to this new height and width.
myFrame.setSize(new Dimension(w, h));
Of course you will have to experiment a bit to see what size works for all your screen sizes. Alternatively you can simply maximise the Frame on start up.
回答2:
you can get the local maximum resolution with
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
Rectangle desktopBounds = env.getMaximumWindowBounds();
then you can adjust your application accordingly note that this is in AWT but for me it still got the right result
来源:https://stackoverflow.com/questions/13629097/how-to-adjust-an-application-jframe-with-every-kind-of-screens