2012-08-01 140 views
0

我有一个面板。该面板有一个文本字段和一个按钮。文本字段有焦点侦听器来搜索一些数据库值,如果没有写入数值,它将显示一个退出时的显示消息。 但是,当编辑的文本字段和按钮点击不按tab键,会出现下面的顺序: 1)聚焦丢失 2)动作监听如何在动作监听器上控制焦点侦听器?

问题是调用聚焦丢失,动作监听者应该致电时 编辑到文本字段--->按钮点击(没有标签到文本字段)

请你分享你的想法?

+0

好吧,我很困惑。如果用户离开该字段,而不输入任何内容,则显示一条消息。如果用户在输入内容后离开,则什么也不做或调用动作监听器? – MadProgrammer 2012-08-01 10:12:54

+0

是的如果用户在输入内容后离开,则调用动作侦听器而不调用失去焦点。 – 2012-08-01 10:41:19

回答

1

如果用户键入的东西后离开,然后调用动作听者无需调用失去焦点

好吧,首先,你不能没有焦点失去解雇,但是,你可以忽略它

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

好了,现在我们可以忽略焦点事件,如何触发动作事件?

好了,奇怪的是,这很简单

button.doClick(); 
+0

谢谢4快速回复,我想我不能正确显示我的prblm, – 2012-08-01 12:23:17