我是Java的新手。
这是教科书中的一些代码,我在addKeyListener(this)
行和text.addKeyListener(this)
行上有错误:
对于JUpsideDown类型,未定义方法addkeyListener(JUpsideDown)。
import java.awt.GridLayout;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JUpsideDown extends JFrame implements KeyListener {
private JLabel lblNewLabel = new JLabel("Flipping text");
private JLabel lblNewLabel1 = new JLabel();
private JTextField text = new JTextField(20);
public JUpsideDown() {
setTitle("Flipping text");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new GridLayout(3,1));
lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
add(lblNewLabel);
add(text);
add(lblNewLabel1);
addkeyListener(this);
text.addkeyListener(this);
}
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
public void keyTyped(KeyEvent e) {
char c = e.getKeyChar();
lblNewLabel1.setText("Last Key: " + c);
}
public static void main(String[] args) {
JUpsideDown test = new JUpsideDown();
test.setSize(500,500);
test.setVisible(true);
}
}
答案 0 :(得分:1)
将addkeyListener
重命名为addKeyListener
(使用大写字母K)。在您的介绍中,您正确地编写了它,但在代码中它拼写错误。由于方法名称区分大小写,因此编译器在尝试调用它的组件中找不到方法addkeyListener
,并给出了相应的编译错误。