0

我有一个面板。此面板有一个文本字段和一个按钮。文本字段有焦点侦听器来搜索一些 db 值,如果没有写入值,它会在选项卡时显示退出显示消息。但是,当编辑文本字段并单击按钮而不按 Tab 键时,会发生以下顺序:1)焦点丢失 2)动作侦听器

问题是失去焦点的调用,当编辑到文本字段时应该调用动作侦听器--->单击按钮(没有标签进入文本字段)

请您分享您的想法好吗?

4

1 回答 1

1

"如果用户在输入内容后离开,则调用动作侦听器而不调用失去焦点

好的,首先,您不能不触发焦点丢失,但是,您可以忽略它

public void focusLost(FocusEvent evt) {
   if (textField.getText().length() > 0) {
       // call action
   } else {
      // show error message
   }
}

好的,既然我们可以忽略焦点事件,那么如何触发动作事件呢?

嗯,令人惊讶的是,这真的很简单

button.doClick();
于 2012-08-01T11:20:53.330 回答