import java.awt.*; import javax.swing.*; import javax.swing.tree.*; import javax.swing.event.*; import java.awt.event.*; public class Test { public static void main (String[] args) { Win win = new Win("Test Window"); } } /*******************/ /* クラスWinの定義 */ /*******************/ class Win extends JFrame { /******************/ /* コンストラクタ */ /******************/ Win (String name) { // Frameクラスのコンストラクタ(Windowのタイトルを引き渡す) super(name); // 木構造データの作成 Font f = new Font("MS 明朝", Font.PLAIN, 20); DefaultMutableTreeNode root = new DefaultMutableTreeNode("生物"); DefaultMutableTreeNode dobutu = new DefaultMutableTreeNode("動物"); root.add(dobutu); DefaultMutableTreeNode inu = new DefaultMutableTreeNode("犬"); dobutu.add(inu); DefaultMutableTreeNode neko = new DefaultMutableTreeNode("猫"); dobutu.add(neko); DefaultMutableTreeNode shokubutu = new DefaultMutableTreeNode("植物"); root.add(shokubutu); DefaultMutableTreeNode sakura = new DefaultMutableTreeNode("桜"); shokubutu.add(sakura); DefaultMutableTreeNode ajisai = new DefaultMutableTreeNode("紫陽花"); shokubutu.add(ajisai); DefaultMutableTreeNode asagao = new DefaultMutableTreeNode("朝顔"); shokubutu.add(asagao); // 木構造を生成 JTree tree = new JTree(root); tree.setFont(f); tree.putClientProperty("JTree.lineStyle", "Angled"); getContentPane().add(new JScrollPane(tree)); // Windowの大きさ setSize(200, 200); // ウィンドウを表示 setVisible(true); // イベントアダプタ addWindowListener(new WinEnd()); } /******************************/ /* 上,左,下,右の余白の設定 */ /******************************/ public Insets getInsets() { return new Insets(35, 10, 10, 10); } /************/ /* 終了処理 */ /************/ class WinEnd extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } }