2017-09-13 1 views
0

Je ne l'ai pas essayé toutes les possibilités, mais l'erreur apparaît encore:Select est pas abstraite et ne remplace méthode abstraite actionPerformed (ActionEvent) dans ActionListener

select.java:4: error: Select is not abstract and does not override abstract method actionPerformed(ActionEvent) in ActionListener

import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
class Select extends JFrame implements ActionListener 
{ 
    JButton admin; 
    JButton user; 
JPanel panel; 
public Select() 
{ 
    admin=new JButton("admin"); 
    user=new JButton("user"); 
    panel=new JPanel(new GridLayout(3,1)); 
    panel.add(admin); 
    panel.add(user); 
    //admin.addActionListener(); 
    admin.addActionListener(new ActionListener() { 
     public void actionPerformed(ActionEvent a) { 
      Login page=new Login(); 
      page.setVisible(true); 
     } 
    }); 
    user.addActionListener(new ActionListener() { 
     public void actionPerformed(ActionEvent b) { 
      Login page=new Login(); 
      page.setVisible(true); 
     } 
    }); 
} 
} 
    class selection 
    { 
     public static void main(String arg[]) 
     { 
      try 
      { 
       Select frame=new Select(); 
       frame.setSize(300,200); 
       frame.setVisible(true); 
      } 
      catch(Exception e) 
      { 
       JOptionPane.showMessageDialog(null, e.getMessage()); 
      } 
     } 
    } 

Répondre

1

Vous utilisez des classes anonymes comme auditeurs d'action pour user et admin. Vous n'utilisez pas Select en tant qu'écouteur d'actions, il vous suffit donc de supprimer le implements ActionListener de la déclaration de class Select.

Vous pouvez également ajouter la méthode requise pour Select:

class Select extends JFrame implements ActionListener { 
    ... 

    public void actionPerformed(ActionEvent e) { 
     ... 
    } 
} 

Cependant, à partir du code affiché, il n'y a pas besoin de mettre en œuvre SelectActionListener.