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

求助:关于鼠标监听
我是编写一个图形界面,上面有一个按钮,向点击这个按钮响应某些事件,但是有个问题,就是程序中myButton.addActionListener()的括号里面不知道该放什么?谢谢大家


import   java.awt.Container;
import   java.awt.event.ActionEvent;
import   java.awt.event.ActionListener;

import   javax.swing.JButton;
import   javax.swing.JFrame;
import   javax.swing.JTextField;
import   java.awt.event.*;

public   class   event   implements   ActionListener   {

static   JFrame   aWindow   =   new   JFrame( "My   First   Window   ! ")   ;
public   void   actionPerformed(ActionEvent   arg0)   {
//   TODO   Auto-generated   method   stub

}
public   static   void   main(String[]   args)   {
JButton   myButton   =   new   JButton( "First ")   ;
aWindow.setBounds(100,   100,   200,   200)   ;
aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE   );
Container   pane1   =   aWindow.getContentPane()   ;
pane1.setLayout(null)   ;
myButton.setBounds(0,   0,   100,   100)   ;
pane1.add(myButton)   ;
myButton.addActionListener();   //就是这一句
aWindow.setVisible(true)   ;
}
}

------解决方案--------------------
myButton.addActionListener(new event());

实现监听接口的对象 就可以 了
------解决方案--------------------
怎么可能加this

看看代码

是在static 方法里面 是没有this 引用的
------解决方案--------------------
我对你的程序作了一些改进,你自己看一下;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;
import java.awt.event.*;

public class event implements ActionListener {
private JFrame aWindow;
private JButton myButton;
static JTextField jf;
Container pane;

public static void main(String[] args)
{
event et=new event();
et.go();

}
void go()
{
aWindow = new JFrame( "My First Window ! ") ;
myButton = new JButton( "First ") ;
jf=new JTextField(30);
aWindow.setBounds(100, 100, 200, 200) ;
aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
pane=aWindow.getContentPane();
pane.add(myButton);
pane.add(jf);
myButton.setBounds(0, 0, 100, 100) ;
myButton.addActionListener(this); //就是这一句
aWindow.setVisible(true);
}

public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
this.jf.setText( "my EventListener ");

}

}