注意: 窗体相对于屏幕默认的坐标为屏幕原点(0, 0), 为了便于理解,将窗体默认的坐标设为(m/2, n/2),
那么设置窗体居中, 就是窗体的坐标从(m/2, n/2)移动到(a/2, b/2)即可。
设置窗体居中坐标图解如下图所示:
示例代码如下:
1 /*
2 * 思路:
3 * A:获取屏幕的宽和高
4 * B:获取窗体的宽和高
5 * C:(用屏幕的宽-窗体的宽)/2,(用屏幕的高-窗体的高)/2作为窗体的新坐标。
6 */
7 // 设置窗体居中
8 public static void setFrameCenter(JFrame jf) {
9 // 获取工具包对象
10 Toolkit tk = Toolkit.getDefaultToolkit();
11
12 // 获取屏幕的宽和高
13 // 获取屏幕的尺寸对象
14 Dimension d = tk.getScreenSize();
15 double srceenWidth = d.getWidth();
16 double srceenHeigth = d.getHeight();
17
18 // 获取窗体的宽和高
19 int frameWidth = jf.getWidth();
20 int frameHeight = jf.getHeight();
21
22 // 得到窗体的新坐标
23 int width = (int) (srceenWidth - frameWidth) / 2;
24 int height = (int) (srceenHeigth - frameHeight) / 2;
25
26 // 设置窗体坐标
27 jf.setLocation(width, height);
28 }