JTextField dispatchEvent不起作用,但适用于TextField

时间:2012-04-29 15:50:44

标签: java swing textfield jtextfield dispatchevent

在我的计划中,当焦点丢失时,我想在名为ActionEvent的{​​{1}}上调用TextField。我成功使用了descField。当我将dispatchEvent更改为TextField时,它无效。我会感激一些帮助(我是Java的业余爱好者)。以下是调度程序,它是JTextField的{​​{1}}方法:

focusLost

如何使用JTextField代替 public void focusLost(FocusEvent f) { ActionEvent action = new ActionEvent(descField, ActionEvent.ACTION_PERFORMED, "focus_lost"); descField.dispatchEvent(action); // Causes actionPerformed to be invoked // Does not work with JTextArea } //focusLost 使其有效?

1 个答案:

答案 0 :(得分:0)

我将ActionEvent中的代码放在此侦听器类中的单独方法中,而只是从actionPerformed和focusLost方法调用它。现在可以使用JTextField正常工作。我想大多数人都会这样做。 actionPerformed代码非常冗长。