Advertisement

GUI事件监听

阅读量:

事件监听

复制代码
 package com.liner.lesson02;

    
  
    
 import java.awt.*;
    
 import java.awt.event.ActionEvent;
    
 import java.awt.event.ActionListener;
    
 import java.awt.event.WindowAdapter;
    
 import java.awt.event.WindowEvent;
    
  
    
 public class TestActionEvent {
    
     public static void main(String[] args) {
    
     //按下按钮出发一些事件
    
     Frame frame = new Frame();
    
     Button button = new Button();
    
     //因为,addActionListener()需要一个ActionListener,所以我们需要构造一个ActionListener
    
     MyActionListener myActionListener = new MyActionListener();
    
     button.addActionListener(myActionListener);
    
     frame.add(button,BorderLayout.CENTER);
    
     frame.pack();//自适应
    
     windowClose(frame);
    
     frame.setVisible(true);
    
     }
    
     //关闭窗体事件
    
     private static void windowClose(Frame frame){
    
     frame.addWindowListener(new WindowAdapter() {
    
         @Override
    
         public void windowClosing(WindowEvent e) {
    
             System.exit(0);
    
         }
    
     });
    
     }
    
 }
    
 class MyActionListener implements ActionListener{
    
  
    
     @Override
    
     public void actionPerformed(ActionEvent e) {
    
     System.out.println("aaa");
    
     }
    
 }

可以多个按钮共享一个事件:

复制代码
 package com.liner.lesson02;

    
  
    
 import java.awt.*;
    
 import java.awt.event.ActionEvent;
    
 import java.awt.event.ActionListener;
    
  
    
 public class TestActionEven02 {
    
     public static void main(String[] args) {
    
     //两个按钮,实现同一个监听
    
     Frame frame = new Frame("开始-停止");
    
  
    
     Button button1 = new Button("start");
    
     Button button2 = new Button("stop");
    
  
    
     button2.setActionCommand("button2-stop");
    
  
    
     MyMonitor myMonitor = new MyMonitor();
    
  
    
     button1.addActionListener(myMonitor);
    
     button2.addActionListener(myMonitor);
    
  
    
     frame.add(button1,BorderLayout.NORTH);
    
     frame.add(button2,BorderLayout.SOUTH);
    
  
    
     frame.pack();
    
     frame.setVisible(true);
    
     }
    
  
    
 }
    
 class MyMonitor implements ActionListener{
    
  
    
     @Override
    
     public void actionPerformed(ActionEvent e) {
    
     System.out.println("按钮被点击了:msg==>"+e.getActionCommand());
    
     e.getActionCommand();
    
     }
    
 }

全部评论 (0)

还没有任何评论哟~