Java 如何使用各种屏幕调整应用程序(JFrame)?
我一直在开发一个Swing应用程序,该应用程序以JFrame为主要框架,其中包含许多JinternalFrame,当我在公司的每台计算机上安装它时,似乎有些计算机的屏幕尺寸比我开发应用程序时希望的屏幕尺寸更小、更紧凑,这是没有用的,所以我问我是否可以将应用程序(框架)调整到各种屏幕尺寸,我使用的是SwingAPIJava 如何使用各种屏幕调整应用程序(JFrame)?,java,swing,jframe,screen-size,jinternalframe,Java,Swing,Jframe,Screen Size,Jinternalframe,我一直在开发一个Swing应用程序,该应用程序以JFrame为主要框架,其中包含许多JinternalFrame,当我在公司的每台计算机上安装它时,似乎有些计算机的屏幕尺寸比我开发应用程序时希望的屏幕尺寸更小、更紧凑,这是没有用的,所以我问我是否可以将应用程序(框架)调整到各种屏幕尺寸,我使用的是SwingAPI 谢谢。您可以这样检查屏幕大小: Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); 然后,您可以决定要覆
谢谢。您可以这样检查屏幕大小:
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
然后,您可以决定要覆盖多少屏幕。比如说屏幕的一半大小
int h = screen.height / 2;
int w = screen.width / 2;
然后将JFrame设置为新的高度和宽度
myFrame.setSize(new Dimension(w, h));
当然,你需要做一些实验,看看什么尺寸适合你所有的屏幕尺寸。或者,您只需在启动时将画面最大化。您可以这样检查屏幕大小:
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
然后,您可以决定要覆盖多少屏幕。比如说屏幕的一半大小
int h = screen.height / 2;
int w = screen.width / 2;
然后将JFrame设置为新的高度和宽度
myFrame.setSize(new Dimension(w, h));
当然,你需要做一些实验,看看什么尺寸适合你所有的屏幕尺寸。或者,您可以简单地在启动时最大化帧。您可以使用
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
Rectangle desktopBounds = env.getMaximumWindowBounds();
然后您可以相应地调整应用程序
请注意,这是在AWT中,但对我来说,它仍然得到了正确的结果您可以使用
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
Rectangle desktopBounds = env.getMaximumWindowBounds();
然后您可以相应地调整应用程序
请注意,这是在AWT中,但对我来说,它仍然得到了正确的结果此外,此处显示的选项建议您始终使用布局。不要让屏幕没有布局(setLayout(null)),因为如果不使用布局,可能会影响不同的操作系统。除了此处显示的选项外,建议您始终使用布局。不要让屏幕上没有布局(setLayout(null)),因为如果不使用布局,可能会影响不同的操作系统。我尝试了此选项,但问题只是识别更改的主框架,而其他组件保持不变:D,类似地,您将需要设置内部帧相对于外部帧大小的大小。我尝试了此选项,但问题只是识别更改的主帧,而其他组件保持原样:D,类似地,您将需要设置内部帧相对于外部帧大小的大小。