模块  java.desktop
软件包  javax.swing.tree

Class DefaultTreeCellEditor

  • 实现的所有接口
    ActionListenerEventListenerCellEditorTreeSelectionListenerTreeCellEditor

    public class DefaultTreeCellEditorextends Objectimplements ActionListener, TreeCellEditor, TreeSelectionListener
    A TreeCellEditor 您需要提供DefaultTreeCellRenderer的实例,以便可以获取图标。 您可以选择提供一个TreeCellEditor ,将根据在该图标奠定了DefaultTreeCellRenderer 如果您不提供TreeCellEditor ,将使用TextField 只需单击三次鼠标,或单击,暂停,单击并延迟1200毫秒即可开始编辑。

    警告:此类的序列化对象与以后的Swing版本不兼容。 当前的序列化支持适用于运行相同版本Swing的应用程序之间的短期存储或RMI。 从1.4开始,对java.beans软件包中添加了对所有JavaBeans java.beans长期存储的支持。 请参阅XMLEncoder

    另请参见:
    JTree
    • 字段详细信息

      • realEditor

        protected TreeCellEditor realEditor
        处理编辑的编辑。
      • editingContainer

        protected Container editingContainer
        编辑容器,将包含 editorComponent
      • editingComponent

        protected transient Component editingComponent
        用于编辑的组件,从 editingContainer获得。
      • canEdit

        protected boolean canEdit
        从Java 2平台v1.4开始,不再使用此字段。 如果您希望提供类似的行为,则应直接覆盖isCellEditable
      • offset

        protected transient int offset
        用于编辑。 表示要放置的x位置editingComponent
      • tree

        protected transient JTree tree
        JTree实例也在听。
      • lastPath

        protected transient TreePath lastPath
        选择的最后一条路径。
      • timer

        protected transient Timer timer
        在开始编辑会话之前使用。
      • lastRow

        protected transient int lastRow
        最后传入 getTreeCellEditorComponent
      • borderSelectionColor

        protected Color borderSelectionColor
        如果应绘制边框选择颜色,则为True。
      • editingIcon

        protected transient Icon editingIcon
        编辑时使用的图标。
      • font

        protected Font font
        要绘制的字体, null表示要使用的渲染器字体。
    • 构造方法详细信息

      • DefaultTreeCellEditor

        public DefaultTreeCellEditor​(JTree tree,                             DefaultTreeCellRenderer renderer)
        使用指定的渲染器和默认编辑器为JTree构造一个DefaultTreeCellEditor对象。 (使用此构造函数进行正常编辑。)
        参数
        tree - 一个 JTree对象
        renderer - 一个 DefaultTreeCellRenderer对象
      • DefaultTreeCellEditor

        public DefaultTreeCellEditor​(JTree tree,                             DefaultTreeCellRenderer renderer,                             TreeCellEditor editor)
        使用指定的渲染器和指定的编辑器为JTree构造一个DefaultTreeCellEditor对象。 (使用此构造函数进行专门编辑。)
        参数
        tree - 一个 JTree对象
        renderer - 一个 DefaultTreeCellRenderer对象
        editor - 一个 TreeCellEditor对象
    • 方法详细信息

      • setBorderSelectionColor

        public void setBorderSelectionColor​(Color newColor)
        设置用于边框的颜色。
        参数
        newColor - 新的边框颜色
      • getBorderSelectionColor

        public Color getBorderSelectionColor()
        返回绘制边框的颜色。
        结果
        边框选择颜色
      • setFont

        public void setFont​(Font font)
        设置要编辑的字体。 null表示应使用渲染器字体。 这不会覆盖您在接收器实例化的编辑器中设置的任何字体。 如果在默认编辑器中传递了编辑器的null ,则将创建将拾取此字体的编辑器。
        参数
        font - 编辑 Font
        另请参见:
        getFont()
      • getTreeCellEditorComponent

        public Component getTreeCellEditorComponent​(JTree tree,                                            Object value,                                            boolean isSelected,                                            boolean expanded,                                            boolean leaf,                                            int row)
        配置编辑器。 传递到realEditor
        Specified by:
        getTreeCellEditorComponent接口 TreeCellEditor
        参数
        tree - 要求编辑编辑的JTree; 此参数可以为null
        value - 要编辑的单元格的值
        isSelected - 如果要使用选择突出显示单元格,则为true
        expanded - 如果节点已展开, expanded true
        leaf - 如果节点是叶节点, leaf true
        row - 正在编辑的节点的行索引
        结果
        用于编辑的组件
      • getCellEditorValue

        public Object getCellEditorValue()
        返回当前正在编辑的值。
        Specified by:
        getCellEditorValue接口 CellEditor
        结果
        当前正在编辑的值
      • stopCellEditing

        public boolean stopCellEditing()
        如果 realEditor允许编辑停止,则删除 realEditor并返回true,否则返回false。
        Specified by:
        stopCellEditing在接口 CellEditor
        结果
        如果编辑停止,则为true; 否则是假的
      • cancelCellEditing

        public void cancelCellEditing()
        消息 cancelCellEditingrealEditor并将其从此实例中删除。
        Specified by:
        cancelCellEditing接口 CellEditor
      • getCellEditorListeners

        public CellEditorListener[] getCellEditorListeners()
        返回使用addCellEditorListener()添加到此DefaultTreeCellEditor的所有 CellEditorListener的数组。
        结果
        如果没有添加任何侦听器,则添加所有 CellEditorListener或空数组
        从以下版本开始:
        1.4
      • actionPerformed

        public void actionPerformed​(ActionEvent e)
        在计时器触发时传递消息,这将启动编辑会话。
        Specified by:
        actionPerformed接口 ActionListener
        参数
        e - 要处理的事件
      • setTree

        protected void setTree​(JTree newTree)
        设置当前正在编辑的树。 这是添加选择侦听器所必需的。
        参数
        newTree - 要编辑的新树
      • shouldStartEditingTimer

        protected boolean shouldStartEditingTimer​(EventObject event)
        如果 eventMouseEvent且点击次数为1,则返回true。
        参数
        event - 正在研究的事件
        结果
        event是否应该启动编辑计时器
      • startEditingTimer

        protected void startEditingTimer()
        启动编辑计时器。
      • canEditImmediately

        protected boolean canEditImmediately​(EventObject event)
        如果 eventnull ,则返回true;如果点击次数> 2 inHitRegion返回 MouseEvent ,并且 inHitRegion返回true。
        参数
        event - 正在研究的事件
        结果
        是否可以为给定的 event启动编辑
      • inHitRegion

        protected boolean inHitRegion​(int x,                              int y)
        如果传入的位置是开始编辑的有效鼠标位置,则返回true。 如果x <=渲染器显示的图标和图标间隙的宽度,则执行此操作以返回false。 换句话说,如果用户点击渲染器显示的文本部分,则返回true,否则返回false。
        参数
        x - 该点的x坐标
        y - 该点的y坐标
        结果
        如果传入的位置是有效的鼠标位置,则为true
      • determineOffset

        protected void determineOffset​(JTree tree,                               Object value,                               boolean isSelected,                               boolean expanded,                               boolean leaf,                               int row)
        确定偏移量。
        参数
        tree - 一个 JTree对象
        value - 一个值
        isSelected - 选择状态
        expanded - 扩展状态
        leaf - 叶子状态
        row - 当前行
      • prepareForEditing

        protected void prepareForEditing()
        在编辑之前调用即开始。 editingComponent添加到editingContainer
      • createContainer

        protected Container createContainer()
        创建容器以管理 editingComponent放置。
        结果
        新的Container对象
      • createTreeCellEditor

        protected TreeCellEditor createTreeCellEditor()
        如果构造函数中未提供TreeCellEditor则调用此方法。 它返回一个TextField编辑器。
        结果
        一个新的 TextField编辑器