在使用Java时,当我启动应用程序时,我发现很难将主窗口定位在屏幕中央。
我有什么办法能做到吗? 它不一定要垂直居中,水平对齐对我来说更重要。但纵向排列也受欢迎。
在使用Java时,当我启动应用程序时,我发现很难将主窗口定位在屏幕中央。
我有什么办法能做到吗? 它不一定要垂直居中,水平对齐对我来说更重要。但纵向排列也受欢迎。
当前回答
您可以使用这个方法,它允许JFrame同时处于居中和全屏。
yourframe.setExtendedState(JFrame.MAXIMIZED_BOTH);
其他回答
您可以使用这个方法,它允许JFrame同时处于居中和全屏。
yourframe.setExtendedState(JFrame.MAXIMIZED_BOTH);
我总是这样做:
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation(dim.width/2-this.getSize().width/2, dim.height/2-this.getSize().height/2);
这里涉及到JFrame。
使用setLocationRelativeTo(空)
此方法在传递空值时具有特殊效果。根据Javadoc:
如果该组件为空,或者与该组件关联的GraphicsConfiguration为空,则窗口将位于屏幕的中央。
这应该在设置大小或调用pack()之后完成,但在将其设置为可见之前,如下所示:
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
如果你显式设置preferredsize(新维度(X, Y));那么最好使用:
setLocation (dim.width / 2-this.getPreferredSize()。width / 2、dim.height / 2-this.getPreferredSize () .height / 2);
你可以调用JFrame.setLocationRelativeTo(null)来使窗口居中。确保把它放在JFrame.setVisible(true)之前