如果要使主窗口 居中一般使用下面的方法:

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


public class ToCenter
{
  public ToCenter(JFrame frame)
  {
      //---------------------------设置窗口居中----------------------------------------------------------
        int windowWidth = frame.getWidth();                    //获得窗口宽
        int windowHeight = frame.getHeight();                  //获得窗口高
        Toolkit kit = Toolkit.getDefaultToolkit();             //定义工具包
        Dimension screenSize = kit.getScreenSize();            //获取屏幕的尺寸
        int screenWidth = screenSize.width;                    //获取屏幕的宽
        int screenHeight = screenSize.height;                  //获取屏幕的高
        frame.setLocation(screenWidth/2-windowWidth/2, screenHeight/2-windowHeight/2);//设置窗口居中显示
        //------------------------------------------------------------------------------------------------
  }

}

当然你也可以让一个Window对象、JWindow对象或Frame对象居中,以下是更通用的方法:

 

 

      Toolkit kit = Toolkit.getDefaultToolkit();    // 定义工具包
    Dimension screenSize = kit.getScreenSize();   // 获取屏幕的尺寸
    int screenWidth = screenSize.width/2;         // 获取屏幕的宽
    int screenHeight = screenSize.height/2;       // 获取屏幕的高
    int height = this.getHeight();
    int width = this.getWidth();
   
    setLocation(screenWidth-width/2, screenHeight-height/2);


另外一种方法,也是jdk1.4之后提供的方法:

 dialog.setLocationRelativeTo(owner);

这种方法是设定一个窗口的相对于另外一个窗口的位置(一般是居中于父窗口的中间),如果owner==null则窗口就居于屏幕的中央(这是一个比较好的方法,对于主窗口就不用再使用上面第一种方法来实现了!!!)。