JTree: addTreeWillExpandListener(TreeWillExpandListener tel)
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.TreeWillExpandListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.ExpandVetoException;
import javax.swing.tree.TreePath;
public class Main {
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);
TreeWillExpandListener treeWillExpandListener = new TreeWillExpandListener() {
public void treeWillCollapse(TreeExpansionEvent treeExpansionEvent)
throws ExpandVetoException {
TreePath path = treeExpansionEvent.getPath();
DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent();
String data = node.getUserObject().toString();
System.out.println("WillCollapse: " + data);
}
public void treeWillExpand(TreeExpansionEvent treeExpansionEvent) throws ExpandVetoException {
TreePath path = treeExpansionEvent.getPath();
DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent();
String data = node.getUserObject().toString();
System.out.println("WillExpand: " + data);
}
};
tree.addTreeWillExpandListener(treeWillExpandListener);
JScrollPane scrollPane = new JScrollPane(tree);
frame.add(scrollPane, BorderLayout.CENTER);
frame.setSize(300, 150);
frame.setVisible(true);
}
}
Related examples in the same category
1. | Tree.closedIcon | | |
2. | Tree.collapsedIcon | | |
3. | Tree.expandedIcon | | |
4. | Tree.leafIcon | | |
5. | Tree.openIcon | | |
6. | JTree.DynamicUtilTreeNode: createChildren(DefaultMutableTreeNode parent, Object children) | | |
7. | new JTree() | | |
8. | new JTree(TreeNode root) | | |
9. | new JTree(Vector vector) | | |
10. | JTree: addTreeSelectionListener(TreeSelectionListener tsl) | | |
11. | JTree: convertValueToText(Object v,boolean s,boolean e,boolean l,int r,boolean h) | | |
12. | JTree: getCellRenderer() | | |
13. | JTree: getLeadSelectionRow() | | |
14. | JTree: getMaxSelectionRow() | | |
15. | JTree: getMinSelectionRow() | | |
16. | JTree: getNextMatch(String prefix, int startingRow, Bias bias) | | |
17. | JTree: getPathForLocation(int x, int y) | | |
18. | JTree: getRowHeight() | | |
19. | JTree: getSelectionRows() | | |
20. | JTree: putClientProperty('JTree.lineStyle', 'None') | | |
21. | JTree: setAutoscrolls(boolean b) | | |
22. | JTree: setCellEditor(TreeCellEditor editor) | | |
23. | JTree: setExpandedState(TreePath path, boolean state) | | |
24. | JTree: setRowHeight(int rowHeight) | | |
25. | JTree: setTransferHandler(TransferHandler newHandler) (Drag and drop files from file explore) | | |