窗口事件处理(2)

  我们点击窗口中的某个按钮时,按钮本身不会产生什么动作,而是由它所委托的监听器来完成相应的逻辑处理,这就是事件处理机制。

  如果想要在点击窗口的关闭按钮时,让窗口有所相应,就需要借助于java.awt.event.WindowAdapter类。它时一个抽象类,根据我们的需求自己完成相应的抽象方法。假设现在我们有这个一个需求:在窗口关闭进行中和关闭后释放资源。那么就需要实现windowClosing和windowClosed两个方法。具体的过程是:

1.写一个新类继承java.wt.event.WindowAdapter
2.分别实现windowClosed和windowClosing两个函数
3.使用addWindowListener添加这个新类进行监听

  具体的代码是:

class myframe extends Frame{

       public myframe()
       {
             windowaction action = new windowaction();
             this.addWindowListener(action);
       }

       public static void main(String args[])
       {
              (new myframe()).setVisible(true);
       }

       class windowaction extends java.et.event.WindowAdapter{
                public void windowClosing(java.awt.event.WindowEvent event)
                {
                         Object object = event.getSource();
                         if(object == myframe.this)
                                 closing(event);
                }
                public void windowClosed(java.awt.event.WindowEvent event)
                {
                          Object object = event.getSource();
                          if(object == myframe.this)
                                  closed(event);
                }
       } 

       void closing(java.awt.event.WindowEvent event)
       {
                setVisible(false);
                dispose();
        }
        void closed(java.awt.event.WindowEvent event)
        {
                System.exit(0);
        }

} 

 

posted on 2017-06-12 10:17  残余的光  阅读(247)  评论(0编辑  收藏  举报

导航