我使用 java.util.Robot 将关键事件发送到我的 Swing 应用程序的某些组件。我遇到了以下问题:要将事件发送到未聚焦的组件,我调用 requestFocusInWindow (从 AWT 线程获得预先输入的保证,如http://docs.oracle.com/javase/1.5.0中所示/docs/api/java/awt/doc-files/FocusSpec.html),然后我等待组件接收到 FOCUS_GAINED 事件。然后我使用机器人发布我的关键事件。但是它们被传递到错误的组件...如果我等待至少 200 毫秒,它就可以工作...
任何想法 ?
(使用 Java 1.6.0_21)