工作小驛

          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
          主站蜘蛛池模板: 武隆县| 榆林市| 永济市| 榕江县| 邵阳县| 延寿县| 邢台市| 米易县| 改则县| 汝城县| 乌拉特前旗| 浮山县| 奉新县| 长寿区| 依安县| 沿河| 高阳县| 全南县| 临桂县| 吕梁市| 安国市| 乌什县| 柳林县| 白山市| 乃东县| 中江县| 吉林市| 湛江市| 陆河县| 吉水县| 乐至县| 南京市| 平阴县| 沧州市| 尉犁县| 应城市| 勐海县| 嘉义市| 上犹县| 平昌县| 巩义市|