2011-01-07 22 views
3

非常に大きなJava Swingデスクトップアプリケーションがあります。開発者は、これらのビューのUIの一般的な構造を反映した、適切なクラスの場所を選ぶ際に、長年にわたりかなり良い仕事をしてきました。この時間の大部分は、傾向のあるバグのある特定のコンポーネントを追跡するのに非常に役立ちます。しかし、パネルやダイアログなどを見つけるのは非常に苦しいケースがあります。通常、UIに表示される一意の文字列をプロパティファイルから検索します。Java UIのコンポーネント階層の検査

開発者がSwingアプリケーションに接続してUIの領域をクリックすると、クリックされたコンポーネントの名前/パッケージ/階層が表示されるサードパーティのツールを知っている人はいますか?

答えて

4

SwingExplorerを持つことができると、そのための最適なツールです。これは、あなたが何を記述しているのか、それ以上のこと(Java2D、EDT違反、AWTイベントの段階的な描画)を行います。

注:プロジェクトはjava.netに移動しています。

1

SwingXデモで探しているものとまったく同じことがあります。 JXTreeTableデモには、コンポーネント階層のツリーが含まれています。マウスが特定のコンポーネントの上に置かれると、そのコンポーネントがテーブルで選択されます。

あなたが見here

3

は、誰もが、開発者がSwingアプリケーションにフックし、クリックされたコンポーネントの名前/パッケージ/階層構造を明らかにするためにUIの地域をクリックすることができますサードパーティ製のツールを知ってい

ダリルのComponent Tree Modelは、この基本的な情報を提供する必要があります。このデモでは、すべてのコンポーネントを表示するためのコンテナとしてルートペインを使用する方法を示します。コンポーネントツリーを表示できるようにクリックされたコンテナを取得するには、アプリケーションにMouseListenerを追加する必要があります。

0

はそれを自分自身を信じることができませんでしたが、本当にように簡単かもしれない:

SwingUtilities.getRoot(...).list() 

リスト方式は、1.0以降が存在します。笑。

関連する問題