4

我的问题看起来像:我有一个用 java 编写的外部应用程序,我启动它。接下来是启动我的应用程序。它应该找到外部应用程序的 JTextFields 并为它们设置适当的文本值。最后,触发放置在此窗口某处的 JButton。

我已经尝试过Java search for on-screen text field的解决方案,但不知何故找不到特定的子窗口

此解决方案生成的输出为:

...
Window found: EnumWindows - NetBeans IDE 7.3 Beta 2
Window found: ToolkitEventListener2
Window found: theAwtToolkitWindow
Window found: 
... 

JFrame 的标题是 ToolkitEventListener2,它创建了 JMenu 和 JButton。

我希望我能很好地解释这个问题,你将能够帮助我。

4

1 回答 1

3

java.awt.Window类有一个静态方法

public static Window[] getWindows()

使用它来获取所有现有窗口的列表。通过标题或焦点找到正确的JFrame(或)并获取所有子组件(递归)。JDialog过滤掉所有JTextFields并使用它们的值。

于 2013-01-14T11:18:41.477 回答