天天看點

JavaSE進階之GUI程式設計

 下面主要用到了java中的swing進行界面設計,當然java的gui不如c#的設計的好看,不過原理還是要會的。

1. gui graphical user interface 使用者圖形界面

    a) 主要包括菜單欄,視窗,工具條,按鈕等;

    b) java提供了兩個gui開發的包 java.awt 和 java.swing, java.awt中的component抽象類是javagui中所有類的父類。它規定了所有gui元件的的的基本特性 j        ava.swing 是在java.awt 的基礎上建構起來的,引入了許多新的功能和新的特性

    c) gui元件

        i. 基本元件:在其控件中不能容納其他元件,如按鈕,文本框等

        ii. 容器:可以在其上面添加其他元件,如視窗,對話框等;

2. swing容器群組件

    a) 建立頂層容器(視窗的實作)------類jframe的使用

        i. 執行個體:jframe frame = new jframe(string title);

        ii. setlocation(int x, int y) 設定窗體的顯示位置

        iii. setsize(int width, int height) 設定窗體的大小

        iv. setvisible(boolean b)  設定窗體是否可見

        v. 獲得内容面闆:container con=fram.getcontentpane();在内容面闆上添加元件

    b) 基本元件分類

        i. 文本輸入元件: jtextfield---文本框  jpasswordfield---密碼框   jtextarea---文本域  jlabel---标簽

        ii. 按鈕元件:jbutton---普通按鈕  jcheckbox---複選框  jradiobutton—單選框  jcombobox –下拉清單框

    c) jtextfield中常用方法

        i. 執行個體化: jtextfield text = new jtextfield(int columns);

        ii. public string gettext() 擷取文本框的内容

        iii. public void settest(string text)設定文本框的内容

    d) jtextarea 中長用方法4

        i. 執行個體化: jtextarea area = new jtextarea(int rows, int columns);

        ii. public string gettext() 擷取文本域内容

        iii. public void settext(string text) 設定文本域中的内容

        iv. public void append(string text)追加内容

        v.       con.add(area);

    e) jcheckbox 複選框

        i. 執行個體化:jcheckbox check = new jcheckbox(string title,boolean selected);

        ii.       con.add(button);

    f) jradiobutton 單選框

        i. 執行個體化:jradiobutton radio = new jradiobutton(string titile, boolean selected);

    g) buttongroup按鈕組的使用

        i. 執行個體化: buttongroup bg = new buttongroup();

        ii. 把同組的按鈕添加在bg中

        iii. 再把每個按鈕添加在frame中

        iv.       con.add(radio3);

    h) jcombobox 下拉菜單

        i. 執行個體化:jcombobox cb = new jcombobox(object[] item);

    i) jpanel類是最簡單的容器類可容納各類基本元件,包括其他面闆

        i. jpanel可以作為面闆元件添加至窗體

    1. jframe.getcontentpane.add(jpanel p);

    2. jframe.setcontentpane(jpanel p);

    3.       p.add(radio3);

    4. p = new jpanel(layoutmanager layout);