【问题标题】:Compiler can't find the method to add KeyListener to my classes编译器找不到将 KeyListener 添加到我的类的方法
【发布时间】:2015-05-06 04:35:22
【问题描述】:

我对 Java 很陌生。

这是来自教科书的一些代码,我在addKeyListener(this) 行和text.addKeyListener(this) 行有一个错误:

方法 addkeyListener(JUpsideDown) 未定义 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);
    }
}

【问题讨论】:

    标签: java keylistener


    【解决方案1】:

    addkeyListener 重命名为 addKeyListener(大写 K)。在您的介绍中,您写得正确,但在代码中拼写错误。由于方法名称区分大小写,因此编译器在尝试调用它的组件中没有找到方法addkeyListener,并给出了相应的编译错误。

    【讨论】:

    • 哈!谢谢!我写这篇文章很晚才知道这一定很愚蠢。我只是看不到它!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-10
    • 1970-01-01
    • 2018-01-12
    • 1970-01-01
    • 2013-12-24
    相关资源
    最近更新 更多