在我的java项目中,我想检查几个不同类中的每个JTextField中的输入(使用完全相同的代码)..
现在我有一遍又一遍地复制相同的代码,我建议使用2个选项:
创建一个方法并改为调用该方法。
创建一个新类,该类从另一个类(我还不知道哪个)扩展而来,具有所需的方法。
我现在使用的代码是:
totalAmount.addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent arg0) {
//do something
}
});
新课程是:
public class Listener extends KeyAdapter {
public void keyTyped(KeyEvent arg0){
//do something
}
}
问题是我不知道我是否正在扩展正确的课程,以及如何使用我写的新课程......
提前致谢!
答案 0 :(得分:4)
要使用密钥适配器执行您想要的操作,您可以使用
totalAmount.addKeyListener(new Listener());
并且您的密钥适配器的代码是正确的。
public class Listener extends KeyAdapter {
public void keyTyped(KeyEvent arg0){
//do something
}
}
要从JTextField
获取文字,您可以在keyAdapter
System.out.println(totalAmount);
或者,您最好使用文档监听器。这将由
完成public class documentListener implements DocumentListener //This is a listener
{
public void changedUpdate(DocumentEvent e){
}
public void removeUpdate(DocumentEvent e){
int lengthMe = e.getDocument().getLength();
System.out.println(e.getDocument().getText(0,lengthMe));
}
public void insertUpdate(DocumentEvent e){
int lengthMe = e.getDocument().getLength();
System.out.println(e.getDocument().getText(0,lengthMe));
}
}
,它将添加到JTextField
totalAmount.getDocument().addDocumentListener(new documentListener());