我继续让这个问题不是抽象的,不会覆盖抽象 还有如何应用JOptionPane
import javax.swing.*;
import java.awt.*;
import java.awt.Color;
import java.awt.event.*;
public class Mycase extends JFrame implements ActionListener {
JLabel text=new JLabel("Enter Name: ");
JLabel text2=new JLabel();
JTextField name=new JTextField(12);
JButton press=new JButton("OK");
JButton cancel=new JButton("CANCEL");
public Mycase(){
super("Name");
setVisible(true);
setSize(150,100);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
add(text);
add(press);
add(cancel);
add(text2);
press.addActionListener(new press());
cancel.addActionListener(new cancel());
}
class press implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
text2.setText("");
name.setText("");
}
}
class cancel implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
public static void main(String[]args)
{
Mycase frame=new Mycase();
}
}
答案 0 :(得分:1)
您已声明Mycase
实施ActionListener
但未定义具有正确签名的方法。 (您的两个内部类press
和cancel
可以,但这不能解决Mycase
的问题。)您不是要尝试将Mycase
的实例注册为一个ActionListener
,所以只需更改此行:
public class Mycase extends JFrame implements ActionListener {
到此:
public class Mycase extends JFrame {