4

私の問題は次のようになります。Java で記述された外部アプリケーションを起動します。次に、アプリケーションを開始します。外部アプリケーションの JTextField を見つけて、それらに適切なテキスト値を設定する必要があります。最後に、このウィンドウのどこかに配置された 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 に答える