我有JTextField
。我希望在JTextField
内粘贴内容时执行一个事件。我需要什么样的事件来解决我的问题?
答案 0 :(得分:5)
KeyListener
不会有效,这就是您应该使用DocumentListener
的原因。
检查链接,它解释得非常好,这是开始的东西:
private DocumentListener myListener = new DocumentListener() {
@Override
public void changedUpdate(DocumentEvent documentEvent) {
//...
}
...
...
}
答案 1 :(得分:3)
同意Maroun Maroun关于KeyListener
在粘贴时使用DocumentListener with insertUpdate
方法,例如
private class MyDocumentListener implements DocumentListener {
public void changedUpdate(DocumentEvent e) {
}
public void insertUpdate(DocumentEvent e) {
Document document = e.getDocument();
try {
String s = document.getText(0, document.getLength());
} catch (BadLocationException e1) {
e1.printStackTrace();
return;
}
}
public void removeUpdate(DocumentEvent e) {
}
}
添加侦听器:
textField.getDocument().addDocumentListener(documentListener);