Creating a Proper ComboBox Editor for a Tree : JTree Editor Renderer « Swing « Java Tutorial






Creating a Proper ComboBox Editor for a Tree
import java.awt.BorderLayout;

import javax.swing.DefaultCellEditor;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.tree.DefaultTreeCellEditor;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.TreeCellEditor;

public class TreeEdit {
  public static void main(String args[]) {
    JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    Object array[] = {Boolean.TRUE, Boolean.FALSE, "Hello"};
    JTree tree = new JTree(array);
    tree.setEditable(true);
    tree.setRootVisible(true);
    
    
    DefaultTreeCellRenderer renderer = (DefaultTreeCellRenderer)tree.getCellRenderer();
    String elements[] = { "A", "B", "C", "D"} ;
    JComboBox comboBox = new JComboBox(elements);
    comboBox.setEditable(true);
    TreeCellEditor comboEditor = new DefaultCellEditor(comboBox);
    TreeCellEditor editor = new DefaultTreeCellEditor(tree, renderer, comboEditor);
    tree.setCellEditor(editor);


    JScrollPane scrollPane = new JScrollPane(tree);
    frame.add(scrollPane, BorderLayout.CENTER);
    frame.setSize(300, 150);
    frame.setVisible(true);
  }
}








14.69.JTree Editor Renderer
14.69.1.Getting Default TreeCellRenderer From JTreeGetting Default TreeCellRenderer From JTree
14.69.2.extends JLabel implements TreeCellRendererextends JLabel implements TreeCellRenderer
14.69.3.Creating a Custom RendererCreating a Custom Renderer
14.69.4.Working with Tree Tooltips: using a Tooltip Cell RendererWorking with Tree Tooltips: using a Tooltip Cell Renderer
14.69.5.Editing Tree Nodes with triple clickingEditing Tree Nodes with triple clicking
14.69.6.Creating a DefaultCellEditor: JTextFieldCreating a DefaultCellEditor: JTextField
14.69.7.Creating a DefaultCellEditor: JComboBoxCreating a DefaultCellEditor: JComboBox
14.69.8.Creating a DefaultCellEditor: JCheckBoxCreating a DefaultCellEditor: JCheckBox
14.69.9.Creating a Proper ComboBox Editor for a TreeCreating a Proper ComboBox Editor for a Tree
14.69.10.Creating an Editor Just for Leaf NodesCreating an Editor Just for Leaf Nodes
14.69.11.Rendering an image in a JTable column
14.69.12.Setting the Activation Click Count for a Table Cell Editor in a JTable Component
14.69.13.Using DefaultTreeCellRenderer
14.69.14.Changing and Removing the Default Icons in a JTree Component
14.69.15.Use UIManager to change the default icon for JTree
14.69.16.Flush the internal cache of Row height