工作小驛

          Ninja!

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            103 Posts :: 0 Stories :: 36 Comments :: 0 Trackbacks
                java這種語言可以編寫很多程序,圖形的程序自然不例外。AWTjava圖形編程的基礎。AWT就是抽象窗口工具集(Abstract Window Toolkit),是java中支持圖形化界面GUI設計的一個工具集,也是繪制其它圖形的基礎部分。

                java.awt.*java語言中的第3大包,這里面包含著相當多的工具,像是字體,顏色,事件等等。首先我們看一個構造GUI程序的例子。實踐:

          import java.awt.*;

           

          public class BorderExample {

           private Frame f; //Frame是框架類,它起到布局的作用

           private Button bn, bs, bw, be, bc; //按鈕也是一個類每new一個Button對象就是一個按鈕。

           public BorderExample() {

              f = new Frame("Border Layout");

              bn = new Button("B1");

              bs = new Button("B2");

              bw = new Button("B3");

              be = new Button("B4");

              bc = new Button("B5");

           }

           public void launchFrame() {

              f.add(bn, BorderLayout.NORTH); //后面大寫的NORTH是表明位置

              f.add(bs, BorderLayout.SOUTH); //Layout稱為布局管理器

              f.add(bw, BorderLayout.WEST);

              f.add(be, BorderLayout.EAST);

              f.add(bc, BorderLayout.CENTER);

              f.setSize(200,200);

              f.setVisible(true);

           }

           public static void main(String args[]) {

              BorderExample guiWindow2 = new BorderExample();

              guiWindow2.launchFrame();

           }}

                 再看一個例子

          import java.awt.*;

          public class ComplexLayoutExample {

           private Frame f;

           private Panel p; //Panel是一個不能單獨顯示,必須放在WindowFrame中,是一個無邊框的區域,其中可以放一些基本的組件。

           private Button bw, bc;

           private Button bfile, bhelp;

           

           public ComplexLayoutExample() {

              f = new Frame("GUI example 3");

              bw = new Button("West");

              bc = new Button("Work space region");

              bfile = new Button("File");

              bhelp = new Button("Help");

           }

           public void launchFrame() {

              // bwbc這兩個按鈕放在Frame邊上

              f.add(bw, BorderLayout.WEST);

              f.add(bc, BorderLayout.CENTER);

              // 為北側的邊上放按鈕

              p = new Panel();

              p.add(bfile);

              p.add(bhelp);

              f.add(p, BorderLayout.NORTH);

              //Panel打包使他可見

              f.pack();

              f.setVisible(true);

           }

           public static void main(String args[]) {

              ComplexLayoutExample gui = new ComplexLayoutExample();

              gui.launchFrame();

           }}

              大家看到了一些按鈕出現在了窗口上,但是這些按鈕都沒有什么意義,有人會發現關閉的按鈕不能用了,放心這是正常的。可以在DOS下面用ctrl+c來結束這個程序。那么我們想讓這些按鈕,有些作用啊,怎么辦呢?那就是需要AWT的事件處理了。我們再來看一個例子。實踐:

          import java.awt.event.*;

          //要想響應一個事件首先實現一個ActionListener的接口

          public class ButtonHandler implements ActionListener {

           public void actionPerformed(ActionEvent e) {

              System.out.println("動作發生");

              System.out.println("按鈕的命令是: "

                                 + e.getActionCommand());

           }}

          import java.awt.*;

           

          public class TestButton {

           private Frame f;

           private Button b;

           

           public TestButton() {

              f = new Frame("測試");

              b = new Button("點擊我!");

          //將一個動作命令設置到一個按鈕上

              b.setActionCommand("按鈕被按下");}

           public void launchFrame() {

              b.addActionListener(new ButtonHandler());

              f.add(b,BorderLayout.CENTER);

              f.pack();

              f.setVisible(true);

           }

           public static void main(String args[]) {

              TestButton guiApp = new TestButton();

              guiApp.launchFrame();

           }

          } 上述代碼打包下載 如有問題請訪問技術論壇

          posted on 2007-08-10 17:01 王君 閱讀(227) 評論(0)  編輯  收藏 所屬分類: J2SE
          主站蜘蛛池模板: 都昌县| 靖远县| 平塘县| 灵宝市| 神农架林区| 教育| 滁州市| 嘉义市| 广宗县| 瑞昌市| 白玉县| 和田县| 凉山| 刚察县| 潞西市| 松潘县| 宾阳县| 烟台市| 迁安市| 吴旗县| 苍溪县| 睢宁县| 永宁县| 武宣县| 丹阳市| 琼结县| 泰和县| 台中市| 綦江县| 交口县| 大关县| 垣曲县| 鹤壁市| 澜沧| 绥芬河市| 黄平县| 盐津县| 淳化县| 油尖旺区| 虎林市| 福州市|