【发布时间】:2014-10-26 18:43:46
【问题描述】:
我正在尝试使 JFrame 居中,我曾经使用过 pack(),我明白了,但我认为这不是干净的方式。
这就是我在 atm 上的做法:
JFrame window = new JFrame();
//filling
//window
//with
//stuff
window.pack();
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
int x = (dim.width - window.getPreferredSize().width) / 2, y = (dim.height - window.getPreferredSize().height) / 2;
window.setBounds(x, y, window.getPreferredSize().width, window.getPreferredSize().height);
我在填充后打包它以获得最终的PreferredSizes,因此我可以在setBounds 方法中使用这些值。但我不喜欢打包后反弹。
有更好的想法吗?
【问题讨论】:
-
我也是这样做的,我对一个好的解决方案非常感兴趣!
标签: java swing jframe window pack