package helloworld;
import javax.swing.*;
import java.awt.event.*;
public class helloworld extends JFrame{
public static void main( String args[] ){
JFrame frame = new helloworld();
frame.setSize( 400, 200 );
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setTitle( "HelloWorld" );
JPanel panel = new Panel();
frame.setContentPane( panel );
frame.setVisible( true );
}
}
class Panel extends JPanel {
private JButton button, resetbutton;
private JTextField textfield;
public Panel(){
button = new JButton( "click" );
button.addActionListener( new ButtonHandler() );
resetbutton = new JButton( "erase" );
resetbutton.addActionListener( new ResetbuttonHandler() );
textfield = new JTextField( 10 );
add( button );
add( textfield );
add( resetbutton );
}
class ButtonHandler implements ActionListener{
public void actionPerformed( ActionEvent e ){
textfield.setText( "you clicked" );
}
}
class ResetbuttonHandler implements ActionListener{
public void actionPreformed( ActionEvent e ){
textfield.setText( "" );
}
}
}
我只是设置了一些基本代码来学习更多关于java的知识。但我的按钮类有问题。
错误说明如下:类型Panel.ResetbuttonHandler必须实现继承的抽象方法ActionListener.actionPerformed(ActionEvent)
以前我也遇到过 ButtonHandler 的问题我不知道怎么解决了这个问题,但 ResetbuttonHandler 仍然显示同样的错误,我无法弄清楚它们之间的区别是什么。
我也是试图@Override
他们,但那不起作用。我有一本关于java的书(这也是我从中学习的地方),他们以完全相同的方式做到这一点。甚至搜索整个互联网,仍然没有找到解决方案。
我希望有人可以帮我解决这个问题!
答案 0 :(得分:1)
请将actionPreformed
方法的拼写更正为actionPerformed
class ResetbuttonHandler implements ActionListener{
public void actionPerformed( ActionEvent e ){
textfield.setText( "" );
}
}