整容说文库 > 程序代码 > 教育资讯

关于actionlistener的简单问题

来源:学生作业帮助网 编辑:整容说文库 时间:2019/11/16 07:52:28 程序代码
关于actionlistener的简单问题程序代码
从head java中copy一段代码,可是无法编译
eclipse提示button.addActionListener(this)的参数错误,要改成button.addActionListener((ActionListener) this);请问问题在哪?谢谢
下面是code
 public void go(){
     JFrame frame=new JFrame();
     JPanel panel=new JPanel();
     JButton button=new JButton("Just Click it");
        button.addActionListener(this);
     text=new JTextArea(10,20);
     text.setLineWrap(true);
    
     JScrollPane scroller=new JScrollPane(text);
     scroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
     scroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
     panel.add(scroller);
     frame.getContentPane().add(BorderLayout.CENTER,panel);
     frame.getContentPane().add(BorderLayout.SOUTH,button);
    
     frame.setSize(350,300);
     frame.setVisible(true);
    
    }
    public void actionPerformed(ActionEvent ev){
     text.append("button clicked \n");
    
    }
答:你确信go()方法所属的类,一定加了:implements java.awt.event.ActionListener吗?
可以传this,但是你要写个内部类实现ActionListener接口。
还没new ActionListener就敢add?
该回复于2008-05-01 06:19:40被版主删除
该回复于2008-05-01 06:25:57被版主删除
1楼说的很对  go()所在的类实现了ActionListener接口以后,才可以传this给addActionListener方法。
需要实现ActionListener接口才可以的
学习下 帮顶
程序代码