使用FocusListener的Java中出现错误
这是我代码中出错的部分。当我编译它时,我得到了这个错误:不是抽象的,并且不会覆盖FocusListener中的抽象方法focusLost(FocusEvent)使用FocusListener的Java中出现错误,java,Java,这是我代码中出错的部分。当我编译它时,我得到了这个错误:不是抽象的,并且不会覆盖FocusListener中的抽象方法focusLost(FocusEvent) 我不知道怎么了。有人能给我解释一下吗?提前感谢。FocusListener是一个接口,它声明了两种方法focusgound和focusLost,但在匿名类实现中,您只实现了focusgound。您只需实现focusLost 或者,您可以从java.awt.event.FocusAdapter派生 import java.awt.*; i
我不知道怎么了。有人能给我解释一下吗?提前感谢。
FocusListener
是一个接口,它声明了两种方法focusgound
和focusLost
,但在匿名类实现中,您只实现了focusgound
。您只需实现focusLost
或者,您可以从java.awt.event.FocusAdapter
派生
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
import java.net.*;
import javax.swing.border.LineBorder;
public class LabelFrame extends JFrame {
private final JTextField urlString;
private final JButton loadButton;
String content;
public LabelFrame() {
super("WebStalker");
setSize(600, 600);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
setLayout(new FlowLayout());
urlString = new JTextField("https:Search",30);
loadButton = new JButton("Load");
JPanel panel = new JPanel();
JLabel label = new JLabel("URL");
panel.add(label);
panel.add(urlString);
panel.add(loadButton);
this.add(panel);
pack();
setLocationRelativeTo(null);
TextFieldHandler tHandler = new TextFieldHandler();
ButtonHandler bHandler = new ButtonHandler();
urlString.addActionListener(tHandler);
loadButton.addActionListener(bHandler);
urlString.addFocusListener(new FocusListener() {
@Override
public void focusGained(FocusEvent e) {
urlString.setText("");
}
});
}
它为
focusgaund
和focusLost
提供了空的默认实现,因此只允许指定您感兴趣的方法。在addFocusListener中重写方法focusLost,因为FocusListener也有应该重写的focusLost方法。
urlString.addFocusListener(new FocusAdapter() { ...