黑马程序员_图形用户界面GUI

来源:互联网 发布:化境云计算 编辑:程序博客网 时间:2024/06/05 16:56

                    ------- android培训java培训、期待与您交流! ----------

1,GUI:Graphical User Interface(图形用户接口)

      CLI:Command Line User Interface(命令行用户接口)

      java为GUI提供的对象都存在java.awt和javax.Swing中

      java.awt: Abstract Window ToolKit(抽象窗口工具包),它需要调用本地系统实现功能,属于重量级控件。

     javax.swing :它是在awt上建立的一套图形界面系统,其中提供了更多的组件。全部由java实现,增强了可移植性。属于轻量级控件。

 2,组件开发

    Fram f = new Fram("一个窗体");

    new  Fram()创建了一个不可见的窗体 然后调用 setVisible(true)使窗体可见

    f.setVisible(true);

   窗体创建后一般位于电脑屏幕的左上角而且非常的小,调用setSize()和setLocation()可以定义窗体的长宽和窗体的位置

    f.setSize(300,300);

    f.setLocation(300.300);

   当创建窗体时其实就是一个个线程的生成,关闭窗体其实就是关闭这个线程,一般窗体创建后,窗体右上角的“X”标志是不能关闭窗体的得给这个窗体添加相应的事件机制

   事件机制特点:事件源,事件,监听器,事件处理

   事件源:就是awt包或swing包中的那些图形界面组件

   事   件:每一个事件源都有自己特有的对应事件和共性事件

   监听器:将可以触发某一个事件的动作都已经封装到监听器中

   事件处理:就是我们想要做的对事件的一些操作

 f.addWindowListener(new WindowAdapter(){

         public void windowClosing(WindowEvent e)

          {

            System.out.println("关闭窗体");

            System.exit(0);

          }

        public void windowActivated(WindowEvent e)

          {

          }

      public void windowOpened(WindowEvent e)

          {

            System.out.println("打开窗体");

          }

})

增加一个按钮Button

 Button b = new Butto("按钮");

 把按钮添加到窗体当中,调用add()方法

 f.add(b);

 利用按钮支持一个监听addActionListener

 b.addActionListener(new ActionListener()

      {

        public void actionPerformed(ActionEvent e)

        {

            System.out.println(“使用按钮关闭”);

            System.exit(0);

        }

      })

联系 列出指定目录内容 源代码如下

package java.awt.day15;
import java.awt.*;
import java.awt.event.*;
import java.io.File;

public class AwtDemo {

 /**
  * @param args
  */
 private Frame f;
 private TextField tf;
 private Button b;
 private TextArea ta;
 AwtDemo()
 {
  init();
 }
 public void init()
 {
  f = new Frame("window");
  tf= new TextField(30);
  b = new Button("转到");
  ta = new TextArea(25,40);
  f.add(tf);
  f.add(b);
  f.add(ta);
  myEvent();
 }
 public void myEvent()
 {
     f.addActionListener(new ActionListener()
     {
      public void actionPerformed()
      {
       String dirPatch = tf.getText();
       File ff = new File(dirPatch);
       ta.setText(""); 
       if(ff.exists()&&ff.isDirectory())
       {
        String[] na = ff.list();
        for(String name:na)
        {
          ta.setText(name+"\r\n"); 
        }
       }
       ta.setText("");
      }
     });
  f.addWindowListener(new WindowAdapter()
  {
   public void windowClosing(WindowEvent e)
   {
    System.exit(0);
   }
  });
 }
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  new AwtDemo();
 }

}