日期:2014-05-20  浏览次数:20675 次

大家帮忙看看,小弟写的一个简单地事件注册,侦听和处理的程序,调试没问题,出现的结果不对。。。
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;


public class  test extends JFrame  implements ActionListener{



 test()
 {
//创建两个按钮 
JButton start=new JButton("start");
JButton stop=new JButton("stop");



   JFrame  mytest =new JFrame();
    mytest.setSize(800,640);
    mytest.setVisible(true);
    

   
    Container mycontainer=getContentPane();
    FlowLayout layout=new FlowLayout(); 
    mycontainer.setLayout(layout);
mycontainer.add(start);
mycontainer.add(stop);


start.addActionListener(this);
stop.addActionListener(this);

}


public void actionPerformed(ActionEvent e){

if(e.getActionCommand().equals("stop")){

System.out.println("stop");
}
else if(e.getActionCommand().equals("start"))


System.out.println("start");
}



   public static void main(String[] args) {
    new test();
       
    }
}



Java 接口 侦听

------解决方案--------------------
加一个mytest.add(mycontainer);试试,或者直接使用JPanel吧
JPanel mypan=gJPanel();  
   FlowLayout layout=new FlowLayout();
mytest.add(mypan);      
ypan.setLayout(layout);   
ypan.add(start); 
    ypan.add(stop); 
------解决方案--------------------
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class test extends JFrame implements ActionListener {
/**
 * 
 */

test() {
// 创建两个按钮
JPanel p=new JPanel();
JButton start = new JButton("start");
JButton stop = new JButton("stop");
JFrame mytest = new JFrame();
p.add(start);
p.add(stop);
mytest.add(p);
mytest.getContentPane().add(p);
mytest.setSize(300,200);
mytest.show();
start.addActionListener(this);
stop.addActionListener(this);
}

public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("stop")) {
System.out.println("stop");
} else if (e.getActionCommand().equals("start"))
System.out.println("start");
}

public static void main(String[] args) {
new test();
}
}
我简单的修改了一下!紧供参考