1 回答
TA贡献1862条经验 获得超6个赞
从我在您的代码中可以看到,这可能有助于解决明显的问题。在您的代码中,由于始终为真的条件(包含一个空字符串)之后的 else,永远无法到达 clear 的 if 分支。我把它移到前面 - 所以它是可以到达的。
我不能从您发布的代码中肯定地说,但 event.toString() 看起来也很可疑,就像最后一个(在下面更改的代码中)条件一样,这总是正确的。
//this looks odd/suspicious to me too!
String inp = event.toString(); //???!!! this is input in a JTextField
/* rather something like
* if(event.getSource() instanceof JTextField){
* inp = ((JTextField)event.getSource()).getText();
* }
*/
if(event.getSource() == clear) { //clear is a button
//clear.setEnabled(true);
txtArea.setText(""); //I've tried selectAll(), replaceSelection()
} else if(inp.contains("sad") || inp.contains("lonely")) {
txtArea.setText(response1);
} else if(inp.contains("")) { //??? always true!! rather: inp.equals("") or inp.isEmpty() ...
txtArea.setText(response2);
}
添加回答
举报
