⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emailtreecelleditor.java

📁 java swing 开发代码
💻 JAVA
字号:
// EmailTreeCellEditor.java// An editor that actually manages two separate editors: one for folders// (nodes) that uses a combobox; and one for files (leaves) that uses a// textfield.//package	jswing.ch17;import javax.swing.*;import javax.swing.event.*;import java.awt.*;import java.util.*;import javax.swing.tree.*;public class EmailTreeCellEditor implements TreeCellEditor {  EditorComboBox nodeEditor;  EmailEditor leafEditor;  CellEditor currentEditor;  static String[] emailTypes = { "Home", "Work", "Pager", "Spam" };    public EmailTreeCellEditor() {        EmailEditor tf = new EmailEditor();        EditorComboBox cb = new EditorComboBox(emailTypes);        nodeEditor = cb;        leafEditor = tf;    }    public Component getTreeCellEditorComponent(JTree tree, Object value,                                                boolean isSelected,                                                boolean expanded,                                                boolean leaf, int row) {        if (leaf) {           currentEditor = leafEditor;          leafEditor.setText(value.toString());        }        else {          currentEditor = nodeEditor;          nodeEditor.setSelectedItem(              ((DefaultMutableTreeNode)value).getUserObject());        }        return (Component)currentEditor;    }    public Object getCellEditorValue() {      return currentEditor.getCellEditorValue();    }    // All cells are editable in this example...    public boolean isCellEditable(EventObject event) {      return true;    }    public boolean shouldSelectCell(EventObject event) {      return currentEditor.shouldSelectCell(event);    }    public boolean stopCellEditing() {      return currentEditor.stopCellEditing();    }    public void cancelCellEditing() {      currentEditor.cancelCellEditing();    }    public void addCellEditorListener(CellEditorListener l) {      nodeEditor.addCellEditorListener(l);      leafEditor.addCellEditorListener(l);    }    public void removeCellEditorListener(CellEditorListener l) {      nodeEditor.removeCellEditorListener(l);      leafEditor.removeCellEditorListener(l);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -