1、容器 容器(container)是一種特殊組件,可以容納其他組件,在其可視區(qū)域內(nèi)顯示這些組件。 Container容器類是Component組件類的子類。聲明如下: public class Container extends Component{ public void setLayout(LayoutManagger mar);//設(shè)置布局管理器 public Component add(Component comp);//添加組件 public void remove(int i);//刪除容器中第i個組件 } 2、窗口和面板 Window窗口類和Panel面板類均為容器類的子類。 窗口有標(biāo)題欄,放大、縮小、關(guān)閉按鈕,可以添加菜單欄,可以獨立存在。 而面板沒有標(biāo)題,沒有邊框,不可添加菜單欄,也不能獨立存在,只能包含在其他容器中。 窗口類聲明如下: public class Window extends Container implementsAccessible //窗口類 { public void setLocationRelativeTo(Component comp) //將窗口置于屏幕中央 } 面板類聲明如下: public classPanel extends Container implements Accessible //面板類 { public Panel() //默認(rèn)FlowLayout布局,居中對齊 public Panel(LayoutManager layout) // layout指定布局管理器 } 3、框架 框架類是窗口類的子類。經(jīng)常用作Application應(yīng)用程序的主窗口。 其聲明如下: public class Frame extends Window implements MenuContainer //框架 { public Frame() public Frame(String title) //參數(shù)title指定框架的標(biāo)題 public String getTitle() //獲取框架的標(biāo)題 public void setTitle(String title) //設(shè)置或修改框架的標(biāo)題 public void setResizable(boolean resizable) //設(shè)置框架是否可變大小 } 例:本例主要顯示Frame框架,修改窗口的標(biāo)題,居中顯示,灰化放大按鈕等,代碼后都有詳細(xì)注釋。 import java.awt.*; import java.awt.event.*; public class jsq extends Frame{ public jsq(){ super("計算器");//調(diào)用Frame帶參的構(gòu)造函數(shù),設(shè)置窗口標(biāo)題為計算器 this.setLocationRelativeTo(null);//調(diào)用窗口類的方法,設(shè)置窗口位于屏幕中央 this.setResizable(false);//設(shè)置窗口不能改變大小 this.setSize(300,300); this.addWindowListener(newWindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } });//關(guān)閉窗口 this.setVisible(true); } public void set(){ Button b=new Button("確定"); this.add(b); } public static void main(String args[]){ jsq j=new jsq(); j.set(); } } 其運(yùn)行結(jié)果如下: |
|