2014-10-06 148 views
-2

我一直具有不抽象的这个问题,不重写抽象 还如何应用的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

您可以创建自定义对话框扩展JDialog – subash 2014-10-06 06:34:31

回答

1

您已经声明Mycase实施ActionListener但它并没有定义的方法具有适当的签名。 (你的两个内部类presscancel做,但这并不与Mycase解决这个问题。)你是不是想注册的Mycase实例为ActionListener,所以才改变这一行:

public class Mycase extends JFrame implements ActionListener { 

对此:

public class Mycase extends JFrame { 
+0

非常感谢你先生 – 2014-10-06 06:37:07