📜  java 如何使窗口居中 - Java (1)

📅  最后修改于: 2023-12-03 14:42:18.337000             🧑  作者: Mango

Java 如何使窗口居中

在Java中,我们可以通过以下两种方式来使窗口居中:

1. 使用setLocationRelativeTo(null)方法
import javax.swing.JFrame;

public class Main {
  public static void main(String[] args) {
    JFrame frame = new JFrame("Window");
    frame.setSize(400, 300);
    frame.setLocationRelativeTo(null); // 使窗口居中

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
  }
}

使用setLocationRelativeTo(null)方法可以将窗口居中,这个方法接收一个Component类型的参数,传入null表示将窗口定位到屏幕中央。

2. 计算并设置窗口位置

如果你想自己计算窗口的位置,可以使用以下代码:

import javax.swing.JFrame;
import java.awt.Toolkit;
import java.awt.Dimension;

public class Main {
  public static void main(String[] args) {
    JFrame frame = new JFrame("Window");
    frame.setSize(400, 300);

    // 获取屏幕的大小
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    int screenWidth = screenSize.width;
    int screenHeight = screenSize.height;

    // 计算窗口位置
    int width = frame.getWidth();
    int height = frame.getHeight();
    int x = (screenWidth - width) / 2;
    int y = (screenHeight - height) / 2;

    // 设置窗口位置
    frame.setLocation(x, y);

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
  }
}

这里通过Toolkit.getDefaultToolkit().getScreenSize()方法获取屏幕大小,然后根据窗口大小计算出窗口左上角的坐标,最后使用frame.setLocation(x, y)方法设置窗口位置。

以上就是Java中如何使窗口居中的两种方式。