JFrame 設定畫面大小

Java 介面化JFrame

JFrame()/ JFrame(string title): 視窗框架物件的建構子;(string title)傳入字串於視窗的標題列。

getContentPane()/ setContentPane(Container contentPane): 取得/設定視窗框架使用的面版。

setDefaultCloseOperation(int operation): 設定視窗關閉動作;可使用常數如下

  1. JFrame.EXIT_ON_CLOSE: 以System類別的Exit()方式離開應用程式。
  2. WindowConstants.DO_NOTHING_ON_CLOSE: 不做任何處理,將所有處理動作定義在回應視窗事件的WindowListener物件之windowClosing()方法內。
  3. WindowConstants.HIDE_ON_CLOSE: 引發WindowListener物件後,自動隱藏視窗框架。
  4. WindowConstants.DISPOSE_ON_CLOSE: 引發WindowListener物件後,自動隱藏並破壞視窗框架。

setVisible(boolean b): 設定是否顯示視窗框架。繼承自java.awt.component類別。

Toolkit.getDefaultToolkit().getScreenSize(): 取得螢幕寬高

jframe.setLocation(int width, int height): 設定視窗顯示位置

super(string title): 呼叫JFrame的建構子,並傳入視窗標題

public class MainForm {
    JFrame jframe;
    public static void main(String argv[]) {
        new MainForm();
      }
      
    public MainForm() {
        jframe = new JFrame("MainForm");
        //設定視窗關閉動作
        jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 設定視窗大小
        jframe.setSize(1220,800);
        //取得螢幕寬高,配置相對位置
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension jframesize = jframe.getSize();
        jframe.setLocation((screenSize.width-jframesize.width)/2,(screenSize.height-jframesize.height)/2);
        jframe.setVisible(true);
      }
    }

改寫

主程式類別繼承JFrame類別,完成同上畫面程式

import java.awt.*;
import javax.swing.*;

public class MainForm extends JFrame {
    public static void main(String argv[]) {
        new MainForm();
      }
      
    public MainForm() 
    {
       super("MainForm");
        //設定視窗關閉動作
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 依據螢幕大小配置合理視窗大小及位置,並顯示視窗
        Dimension screenSize =Toolkit.getDefaultToolkit().getScreenSize(); 
        setSize(screenSize.width,screenSize.height);
        setLocationRelativeTo(null);
        setVisible(true);
      }
    }