Java by API/javax.swing.event/TreeExpansionListener

Материал из Java эксперт
Перейти к: навигация, поиск

implements TreeExpansionListener

   <source lang="java">
 

import java.awt.BorderLayout; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTree; import javax.swing.event.TreeExpansionEvent; import javax.swing.event.TreeExpansionListener; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.TreePath; public class TreeExpansionListenerDemo {

 public static void main(String args[]) {
   JFrame frame = new JFrame();
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   DefaultMutableTreeNode root = new DefaultMutableTreeNode("Root");
   root.add(new DefaultMutableTreeNode("A"));
   root.add(new DefaultMutableTreeNode("B"));
   root.add(new DefaultMutableTreeNode("C"));
   JTree tree = new JTree(root);
   TreeExpansionListener treeExpandListener = new TreeExpansionListener() {
     public void treeExpanded(TreeExpansionEvent event) {
       TreePath path = event.getPath();
       DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent();
       String data = node.getUserObject().toString();
       System.out.println("Expanded: " + data);
     }
     public void treeCollapsed(TreeExpansionEvent event) {
       TreePath path = event.getPath();
       DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent();
       String data = node.getUserObject().toString();
       System.out.println("Collapsed: " + data);
     }
   };
   tree.addTreeExpansionListener(treeExpandListener);
   JScrollPane scrollPane = new JScrollPane(tree);
   frame.add(scrollPane, BorderLayout.CENTER);
   frame.setSize(300, 150);
   frame.setVisible(true);
 }

}


 </source>