小编Mir*_*ral的帖子

按Enter键时,Textfield中的KeyListener不会触发

我正在尝试制作一个程序,可以将华氏度转换为java中的celcius.在程序中我有2个标签和1个TextField用于输入.我想在用户输入温度并按下时转换温度Enter.为此,我在文本字段中添加了一个关键监听器,但它不起作用.当我按下Enter听众时根本不开火.

这是我的代码.

public class TempConv extends JFrame{

private JLabel info;
private JLabel result;
private JTextField input;
private String outcome;

public TempConv(){

    super("Temperature Converter");
    setLayout(new BorderLayout());

    info = new JLabel("Enter Fahrenheit Temperature");
    add(info, BorderLayout.NORTH);

    input = new JTextField(12);
    add(input, BorderLayout.CENTER);

    result  = new JLabel("Temperature in Celcius is: " + outcome);
    add(result, BorderLayout.SOUTH);

    input.addKeyListener(
            new KeyListener(){

                public void keyPressed(KeyEvent e){

                    if(e.getKeyChar() == KeyEvent.VK_ENTER){

                        outcome = input.getText();
                    }       
                }
            }
        );
}

public static void main(String[] args) {


    TempConv …
Run Code Online (Sandbox Code Playgroud)

java swing awt keylistener listener

5
推荐指数
1
解决办法
3万
查看次数

标签 统计

awt ×1

java ×1

keylistener ×1

listener ×1

swing ×1