2014-10-18 83 views
0

我正在爲我的OOP類編寫一個java程序,並且我正在嘗試添加一些actionlisteners,但由於某些原因我不斷收到此錯誤「BattleshipUI.ExitListener不是抽象的,並且不會在ActionListener中重寫抽象方法actionPerformed(ActionEvent) 「,下面的代碼是我如何構建我的actionlistener。ActionListener不是抽象的,不重寫抽象方法,但我有一個actionPerformed,有什麼錯?

public class ExitListener implements ActionListener { 
    public void actionPerformed(ActionEvent e){ 
     int response = JOptionPane.showConfirmDialog(null,"Are you sure you want to exit?","Exit",JOptionPane.YES_NO_OPTION); 

     if (response == JOptionPane.YES_OPTION){ 
      System.exit(0); 
     } 
    } 


} 

我在我的代碼中有大約4個這樣的代碼,每個代碼都有相同的錯誤。 任何幫助將不勝感激。

import java.awt.BorderLayout; 
 
import java.awt.Color; 
 
import java.awt.Dimension; 
 
import java.awt.FlowLayout; 
 
import java.awt.GridLayout; 
 
import java.awt.event.ActionListener; 
 
import javafx.event.ActionEvent; 
 
import javax.swing.BorderFactory; 
 
import javax.swing.JButton; 
 
import javax.swing.JComboBox; 
 
import javax.swing.JFrame; 
 
import javax.swing.JLabel; 
 
import javax.swing.JMenu; 
 
import javax.swing.JMenuBar; 
 
import javax.swing.JMenuItem; 
 
import javax.swing.JOptionPane; 
 
import javax.swing.JPanel; 
 
import javax.swing.SwingConstants; 
 
import javax.swing.border.BevelBorder;

+0

我的猜測是你正在導入錯誤的'ActionEvent'類。請顯示您的進口。 – 2014-10-18 16:11:26

+0

我同意@JonSkeet此外BattleshipUI.ExitListener它似乎是你的監聽器在BattleshipUI類(因爲你的exitlistener不能公開,如果是這樣的話)? – SMA 2014-10-18 16:14:24

+0

我相信我找到了問題,我正在導入「import javafx.event.ActionEvent;」但是應該是「import java.awt.event.ActionEvent;」謝謝你讓我檢查! – user3768356 2014-10-18 16:35:43

回答

3

改變你的進口javafx.event.ActionEventjava.awt.event.ActionEvent或更改

public void actionPerformed(ActionEvent e){ 
     int response = JOptionPane.showConfirmDialog(null,"Are you sure you want to exit?","Exit",JOptionPane.YES_NO_OPTION); 

     if (response == JOptionPane.YES_OPTION){ 
      System.exit(0); 
     } 
    } 

public void actionPerformed(java.awt.event.ActionEvent e){ 
     int response = JOptionPane.showConfirmDialog(null,"Are you sure you want to exit?","Exit",JOptionPane.YES_NO_OPTION); 

     if (response == JOptionPane.YES_OPTION){ 
      System.exit(0); 
     } 
    } 

,如果你需要保持javafx進口。

+0

我剛剛非常感謝!這是昨天整個竊聽我! – user3768356 2014-10-18 16:38:15

相關問題