我的问题很简单我猜... 我想我的Java框架居中当我运行我的程序。居中整个窗口Java
我用下面的代码:
setLocationRelativeTo(null);
问题:
这是居中的帧,但不的整个帧的左上角。我该如何纠正这个问题,并让整个框架居中?
谢谢你的帮助!
我的问题很简单我猜... 我想我的Java框架居中当我运行我的程序。居中整个窗口Java
我用下面的代码:
setLocationRelativeTo(null);
问题:
这是居中的帧,但不的整个帧的左上角。我该如何纠正这个问题,并让整个框架居中?
谢谢你的帮助!
setLocationRelativeTo(null);
... 这是
看来这...呼叫在错误的时间所取得的帧的左上角,框架先后承担了自然大小前。要解决该问题,请按照此顺序进行。
pack()
可以使框架成为显示其当前包含的组件所需的最小尺寸。setLocationRelativeTo(null);
OTOH:如果您的计算机上运行的程序,走这一点。但是,如果你需要提供应用程序。对于像我这样的其他人,请考虑使用setLocationByPlatform(true)
(下面的Windows演示)。
这必须是被接受的答案。 – gontard
@gontard我也这么认为!但是,提出这个问题的人要真正做出决定。当我发布这个答案时,已经有一个被接受的答案。但我希望注入一些其他想法,赚取一些赞成票,也许,也许,请求者改变主意。 ;) –
你好,我刚刚阅读你的答案和其他评论,我必须承认你的答案是最好的,最简单的。我遵循你的建议,它工作正常。谢谢,至少我的代码会更“干净”。 – user1614914
你可以试试这个。它是在我的情况下工作。
Frame frame = new Frame("Centered Frame");
Dimension dimemsion = Toolkit.getDefaultToolkit().getScreenSize();
frame.setLocation(dimemsion.width/2-frame.getSize().width/2,
dimemsion.height/2-frame.getSize().height/2);
如果您使用的是NetBeans,请转至platee manager - > property - > form Size策略。
在标题中加入“(已解决)”没有意义。如果你有你的答案,__accept__那! – 0605002
@ FlopCoder:当我编辑它时,我不能等待几分钟。感谢您的理解。 – user1614914