在这里我的情况:
textField1.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
textField1StateChanged(e);
}
});
错误表示对于JTextField类型,未定义addChangeListener。 还有什么东西可以导入吗? (我是java的新手) 感谢
答案 0 :(得分:2)
你可能想试试这个:
// Listen for changes in the text
textField.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent e) {
//your code
}
public void removeUpdate(DocumentEvent e) {
}
public void insertUpdate(DocumentEvent e) {
}
});
答案 1 :(得分:1)
还有什么东西可以导入吗?
这与导入无关,JTextField
有可用的方法。那不是其中之一。
有关表格中的详细信息,请参阅Listeners Supported by Swing Components: Other Listeners that Swing Components Support。
答案 2 :(得分:0)
那是因为JTextField中没有这样的方法。您需要做的是让您的类实现ChangeListener,并实现stateChanged()
方法。在这里,您将获得从传入的ChangeEvent触发事件的组件,并相应地执行操作。以下是docs:
class YourClass implements ChangeListener {
public void stateChanged(ChangeEvent e) {
if (e.getSource() instanceof JTextField) {
JTextField source = (JTextField)e.getSource();
if(!source.getValueIsAdjusting()) {
// check if this is the component you want and respond to the event
}
}
}
}