組件
Java圖形用戶界面最基本組成部分是組件(Component)。組件是一個以圖形化的方式顯示在屏幕上並能與用戶交互的對象,例如一個按鈕一個標簽等。組件不能單獨顯示出來,必須將組件放在容器中才可以顯示出來類Java.awt.Component是許多組件類的父類,Component類中封裝來了組件通用的方法和屬性,如大小,組件對象,顯示位置,顏色等
常用容器
容器java.awt.Container是一個類也是Component的子類,因此容器本身也是一個組件但他主要功能是容納其他組件和容器。一個容器可以容納多個組件並使他們成為一個整體。所有容器都可以通過add方法向容器中添加組件。
三種常用容器:Frame,Panel,ScrollPane
Frame
Frame類是Container類的間接字類。當需要一窗口時可以使用Frame或其子類創建一個對象。窗口也是一個容器可以向窗口添加組件(不允許將一個窗口添加到另一個容器中)
import java.awt.Color; import java.awt.Frame; public class Glt extends Frame{ public static void main (String[] args){ Glt f = new Glt("hello");//構造方法 f.setSize(500,200);//設置Frame大小 f.setBackground(Color.red);//設置背景顏色 f.setVisible(true);//設置Frame為可見,默認是不可見 } public Glt(String s){ super(s);//調用父類構造方法 } }
Panel
Panel類是Container(容器)的子類,因此Panel類及其子類的實例也是一個容器,Panel類容器的默認布局是Flowlayout布局。Panel類創建的對象稱為面板,經常在一個面板內添加若干個組件后再將面板放到另一個容器內。
import java.awt.Color; import java.awt.Frame; import java.awt.Panel; public class Glt extends Frame{ public static void main (String[] args){ Glt f = new Glt("hello");//構造方法 Panel pan = new Panel(); f.setSize(200,200);//設置Frame大小 f.setBackground(Color.red);//設置背景顏色 f.setLayout(null);//取消布局管理器 pan.setSize(100,100);//設置面板大小 f.add(pan);//用add方法把面板pan添加到框架f中 f.setVisible(true);//設置Frame為可見,默認是不可見 } public Glt(String s){ super(s);//調用父類構造方法 } }
ScrollPane
ScrollPane類是Container類的子類,因此該類創建的對象也是一個容器稱為滾動面板。用戶可以把一個組件放在滾動面板中然后通過滾動條來觀察該組件。與Panel創建的容器不同是ScrollPane帶有滾動條而且只能向滾動面板添加一個組件