Swing: JTree で特定のノードを展開する方法


Java の Swing JTree で、 特定のノードを展開した状態にする方法です。

サンプルコード

JTree オブジェクト の expandPath メソッド を使います。 ここで selectedNodeDefaultMutableTreeNode クラス のオブジェクトです。

expandPath メソッド の引数は TreePath なので、 new TreePath(selectedNode.getPath)TreePath オブジェクト を作成してメソッドに渡します。

発展

選択されたノードを自動で展開するコードです。

JTree のデフォルトでは 複数のノードを選択することもできますので、 switch で 選択されたノードの数について分岐しています。 そして、 子のノードを持ちうる場合のみノードを展開するようにしています。