使java.awt.Window
居中的最简单方法是什么,例如JFrame
或JDialog
发布于 2008-09-28 01:33:16
这应该适用于所有版本的Java
public static void centreWindow(Window frame) {
Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();
int x = (int) ((dimension.getWidth() - frame.getWidth()) / 2);
int y = (int) ((dimension.getHeight() - frame.getHeight()) / 2);
frame.setLocation(x, y);
}
发布于 2013-05-02 06:06:40
应该在使用setSize(x,y)
或pack()
之后调用setLocationRelativeTo(null)
。
发布于 2008-09-30 03:39:08
请注意,setLocationRelativeTo(null)和Tookit.getDefaultToolkit().getScreenSize()技术仅适用于主监视器。如果您处于多监视器环境中,则在执行此类计算之前,可能需要获取有关窗口所在特定监视器的信息。
有时重要,有时不重要..。
有关如何获得此功能的更多信息,请参阅GraphicsEnvironment javadocs。
https://stackoverflow.com/questions/144892
复制相似问题