Col*_*rmy 21 java swing jbutton jtextfield documentlistener
所以我知道这是一个很受欢迎的问题,已经找到了解决方案.但是,当我尝试这个时,它无法正常工作.
我的JTextField为空,并且未启用该按钮.当我在文本字段中写东西时,按钮不会启用.
所以我的程序应该每秒检查一次该字段是否为空.只要有人在文本字段中写入内容,就应该启用该按钮.^^
loginbt = new JButton("Login");
loginbt.addActionListener(new loginHandler());
add(loginbt);
if(name.getText().equals("")) {
loginbt.setEnabled(false);
}else {
loginbt.setEnabled(true);
}
Run Code Online (Sandbox Code Playgroud)
san*_*hat 31
为此,您需要添加更改侦听器(DocumentListener对文本中的更改做出反应)JTextField,并且在内部actionPerformed(),您需要loginButton根据是否JTextfield为空来更新启用/禁用.
以下是我从这个帖子中找到的内容.
yourJTextField.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent e) {
changed();
}
public void removeUpdate(DocumentEvent e) {
changed();
}
public void insertUpdate(DocumentEvent e) {
changed();
}
public void changed() {
if (yourJTextField.getText().equals("")){
loginButton.setEnabled(false);
}
else {
loginButton.setEnabled(true);
}
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
179217 次 |
| 最近记录: |