从JTextField返回文本的方法

时间:2017-09-06 16:57:23

标签: java swing compiler-errors

我有一个静态方法,我希望从JTextField返回一个字符串。我希望它像Scanner' s nextLong()一样,当调用该方法时,程序的其余部分会一直停止输入。这是我的代码,我尝试了如何做到这一点。

String y;

JTextField a = new JTextField(7);
a.setFont(silkScreen);
a.setForeground(Color.white);
a.setBackground(Color.black);
a.setAlignmentX(JTextField.CENTER_ALIGNMENT);
a.setBorder(javax.swing.BorderFactory.createEmptyBorder());
a.addKeyListener(new KeyAdapter() {
    public void keyTyped(KeyEvent e) {
        if (a.getText().length() >= 9) { // limit textfield to 9 characters
            e.consume();
        }
    }
});
a.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent arg0) {
        y = a.getText();
    }
});

panel.add(a);
frame.add(panel);

frame.pack();
frame.setSize(640 / 2, 480 / 2);
frame.setVisible(true);
return y;

但是,Java吐出了这个错误:

  

在封闭范围内定义的局部变量y必须是final或   有效的最终

0 个答案:

没有答案