Java 更改操作侦听器中的textfield
如何更改Java 更改操作侦听器中的textfield,java,swing,actionlistener,textfield,Java,Swing,Actionlistener,Textfield,如何更改ActionLIstener中JTextfield的值 cmdAnzeigen.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { /* Cannot refer to a non-final variable TextOutput inside an inner class defined in a different method*/ Text
ActionLIstener
中JTextfield
的值
cmdAnzeigen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
/* Cannot refer to a non-final variable TextOutput inside an
inner class defined in a different method*/
TextOutput.setText("Hello");
}
});
在这里,您可以编写另一个方法,并将TextField值更改代码放入该方法中。像
public class Demo {
static JTextField txtName;
static JButton jbSubmit;
public Demo()
{
txtName = new JTextField(10);
jbSubmit = new JButton("Submit");
jbSubmit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
change("XYZ");
}
});
}
public static void change(String name)
{
txtName.setText(name);
}
public static void main(String[] args) {
Demo d = new Demo();
JFrame jf=new JFrame();
jf.add(txtName);
jf.add(jbSubmit);
jf.setLayout(new FlowLayout());
jf.setVisible(true);
jf.setSize(500,200);
}
}好吧,按照错误消息的提示,将变量设为final。此外,在Java中,变量应该以小写字母开头。在谷歌上粘贴错误信息会让你得到很多解释,并遵循Java命名惯例。变量应以小写字母开头,使用驼峰式大小写。