1. 程式人生 > >JAVA桌面開發使窗體螢幕居中

JAVA桌面開發使窗體螢幕居中

Java開發桌面程式用AWT或SWING,可以用設定主視窗位置,使主視窗居中一般使用下面的方法: 
01、第一種方法 

     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);//設定視窗居中顯示 


02、第二種方法 

     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); 

03、第三種方法,是jdk1.4之後提供的方法 
     setLocationRelativeTo(owner); 

    這種方法是設定一個視窗的相對於另外一個視窗的位置(一般是居中於父視窗的中間),如果owner==null則視窗就居於螢幕的中央。 


04、第四種方法,可用於多個顯示屏合起來組成的大型螢幕同時顯示一個視窗時,也能實現居中功能,向之前的視窗居中方法,僅限於當前視窗一個螢幕居中。 
private void setFrameCenterToScreenCenter_2(){
Point pointSreenCenter = GraphicsEnvironment.getLocalGraphicsEnvironment().getCenterPoint(); 
setLocation(pointSreenCenter.x-getSize().width/2, pointSreenCenter.y-getSize().height/2);