创建一个扩展 keyListener 的 class
Creating a class that extends keyListener
在我的 java 项目中,我想在几个不同的 class 中检查每个 JTextField 中的输入(使用完全相同的代码)..
现在我一遍又一遍地复制相同的代码,我被建议使用 2 个选项:
创建一个方法并改为调用该方法。
创建一个新的 class,它从另一个具有所需方法的 class(我还不知道是哪个)扩展。
我现在使用的代码是:
totalAmount.addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent arg0) {
//do something
}
});
而新的 class 是:
public class Listener extends KeyAdapter {
public void keyTyped(KeyEvent arg0){
//do something
}
}
问题是我不知道我是不是在扩展右边class,以及如何使用我写的新class...
提前致谢!
要用你的钥匙适配器做你想做的事,你会使用
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());
在我的 java 项目中,我想在几个不同的 class 中检查每个 JTextField 中的输入(使用完全相同的代码)..
现在我一遍又一遍地复制相同的代码,我被建议使用 2 个选项:
创建一个方法并改为调用该方法。
创建一个新的 class,它从另一个具有所需方法的 class(我还不知道是哪个)扩展。
我现在使用的代码是:
totalAmount.addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent arg0) {
//do something
}
});
而新的 class 是:
public class Listener extends KeyAdapter {
public void keyTyped(KeyEvent arg0){
//do something
}
}
问题是我不知道我是不是在扩展右边class,以及如何使用我写的新class...
提前致谢!
要用你的钥匙适配器做你想做的事,你会使用
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());