- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JTree
-
- All Implemented Interfaces:
-
ImageObserver
,MenuContainer
,Serializable
,Accessible
,Scrollable
@JavaBean(defaultProperty="UI", description="A component that displays a set of hierarchical data as an outline.") public class JTree extends JComponent implements Scrollable, Accessible
将一组分层数据显示为轮廓的控件。 您可以在“Java教程”一节中的“ How to Use Trees”中找到面向任务的文档和使用树的示例。树中的特定节点可以通过
以下TreePath
(封装节点及其所有祖先的对象)或其显示行来标识,其中显示区域中的每一行显示一个节点。 扩展节点是非叶节点(由TreeModel.isLeaf(node)
标识,返回false),当其所有祖先被扩展时,它将显示其子节点。 折叠的节点是隐藏它们的节点。 一个隐藏的节点是一个倒塌的祖先。 所有可见节点的父节点都被扩展,但可能显示也可能不会显示。 显示的节点是可见的,并且在显示区域中可以看到。JTree
方法使用“可见”来表示“显示”:-
isRootVisible()
-
setRootVisible()
-
scrollPathToVisible()
-
scrollRowToVisible()
-
getVisibleRowCount()
-
setVisibleRowCount()
JTree
方法使用“可见”来表示“可视”(在展开的父级下):-
isVisible()
-
makeVisible()
TreeSelectionListener
接口,并使用方法addTreeSelectionListener
添加实例。valueChanged
将在选择更改时被调用,也就是说如果用户在同一个节点上点击两次valueChanged
只会被调用一次。如果您有兴趣检测双击事件或用户单击某个节点时,无论是否选择它,我们建议您执行以下操作:
final JTree tree = ...; MouseListener ml = new MouseAdapter() { public void mousePressed(MouseEvent e) { int selRow = tree.getRowForLocation(e.getX(), e.getY()); TreePath selPath = tree.getPathForLocation(e.getX(), e.getY()); if(selRow != -1) { if(e.getClickCount() == 1) { mySingleClick(selRow, selPath); } else if(e.getClickCount() == 2) { myDoubleClick(selRow, selPath); } } } }; tree.addMouseListener(ml);
注意:此示例获取路径和行,但您只需要获得您感兴趣的。要使用
JTree
显示复合节点(例如,包含图形图标和文本的节点),子类别为TreeCellRenderer
,并使用setCellRenderer(javax.swing.tree.TreeCellRenderer)
通知树使用它。 编辑这样的节点,子类TreeCellEditor
并使用setCellEditor(javax.swing.tree.TreeCellEditor)
。像所有
警告: Swing不是线程安全的。 欲了解更多信息,请参阅Swing's Threading Policy 。JComponent
类一样,您可以使用InputMap
和ActionMap
将一个Action
对象与一个KeyStroke
关联,并在指定的条件下执行该操作。警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,对于所有JavaBeans的长期存储的支持已被添加到
java.beans
包中。 请参阅XMLEncoder
。- 从以下版本开始:
- 1.2
- 另请参见:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 protected class
JTree.AccessibleJTree
该类实现JTree
类的可访问性支持。static class
JTree.DropLocation
的一个子类TransferHandler.DropLocation
表示用于一个放置位置JTree
。static class
JTree.DynamicUtilTreeNode
DynamicUtilTreeNode
可以包装向量/哈希表/数组/字符串,并根据需要创建适当的子树节点。protected static class
JTree.EmptySelectionModel
EmptySelectionModel
是一个TreeSelectionModel
,不允许任何东西被选中。protected class
JTree.TreeModelHandler
监听模型并在节点被移除或更改时相应更新expandedState
。protected class
JTree.TreeSelectionRedirector
手柄创建一个新的TreeSelectionEvent
与JTree
作为来源,并将其传递给所有的听众。-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field 描述 static String
ANCHOR_SELECTION_PATH_PROPERTY
锚点选择路径的绑定属性名称。static String
CELL_EDITOR_PROPERTY
绑定属性名称为cellEditor
。static String
CELL_RENDERER_PROPERTY
绑定属性名称为cellRenderer
。protected TreeCellEditor
cellEditor
编辑条目。protected TreeCellRenderer
cellRenderer
用于绘制节点的单元格。protected boolean
editable
树可编辑吗?static String
EDITABLE_PROPERTY
绑定属性名称为editable
。static String
EXPANDS_SELECTED_PATHS_PROPERTY
用于展开所选路径属性的绑定属性名称static String
INVOKES_STOP_CELL_EDITING_PROPERTY
绑定属性名称为messagesStopCellEditing
。protected boolean
invokesStopCellEditing
如果为真,当通过选择更改来停止编辑时,将调用树更改或其他方法中的数据stopCellEditing
,并保存更改。static String
LARGE_MODEL_PROPERTY
绑定属性名称为largeModel
。protected boolean
largeModel
这棵树是大模型吗?static String
LEAD_SELECTION_PATH_PROPERTY
绑定属性名称为leadSelectionPath
。static String
ROOT_VISIBLE_PROPERTY
绑定属性名称为rootVisible
。protected boolean
rootVisible
如果显示根节点,则为真,如果子节点是最高可见节点,则为false。static String
ROW_HEIGHT_PROPERTY
绑定属性名称为rowHeight
。protected int
rowHeight
每个显示行使用的高度。static String
SCROLLS_ON_EXPAND_PROPERTY
绑定属性名称为scrollsOnExpand
。protected boolean
scrollsOnExpand
如果为true,当节点被展开时,许多后代被滚动以便可见。static String
SELECTION_MODEL_PROPERTY
选择模型的绑定属性名称。protected TreeSelectionModel
selectionModel
模拟此树中所选节点的集合。protected JTree.TreeSelectionRedirector
selectionRedirector
创建一个新的事件,并将其从selectionListeners
传递。static String
SHOWS_ROOT_HANDLES_PROPERTY
绑定属性名称为showsRootHandles
。protected boolean
showsRootHandles
如果句柄显示在树的最上层,则为true。static String
TOGGLE_CLICK_COUNT_PROPERTY
绑定属性名称为toggleClickCount
。protected int
toggleClickCount
节点扩展前的鼠标点击次数static String
TREE_MODEL_PROPERTY
绑定属性名称为treeModel
。protected TreeModel
treeModel
定义由该对象显示的树的模型。protected TreeModelListener
treeModelListener
更新expandedState
。static String
VISIBLE_ROW_COUNT_PROPERTY
绑定属性名称为visibleRowCount
。protected int
visibleRowCount
一次可见的行数。-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
构造方法摘要
构造方法 Constructor 描述 JTree()
返回一个JTree
的样本模型。JTree(Object[] value)
返回一个JTree
与指定数组的每个元素作为新的根节点的子节点不显示。JTree(Hashtable<?,?> value)
返回一个JTree
创建的Hashtable
,它不会用root显示。JTree(Vector<?> value)
返回一个JTree
,其中指定的每个元素为Vector
作为未显示的新根节点的子节点。JTree(TreeModel newModel)
返回显示根节点的JTree
的实例 - 使用指定的数据模型创建树。JTree(TreeNode root)
返回一个JTree
,其中指定了TreeNode
作为根,显示根节点。JTree(TreeNode root, boolean asksAllowsChildren)
以指定的TreeNode
作为根,返回一个JTree
,显示根节点,并以指定的方式决定节点是否为叶节点。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
addSelectionInterval(int index0, int index1)
将指定的行(包括)添加到选择。void
addSelectionPath(TreePath path)
将由指定的TreePath
标识的节点添加到当前选择。void
addSelectionPaths(TreePath[] paths)
将路径数组中的每个路径添加到当前选择。void
addSelectionRow(int row)
将指定行的路径添加到当前选择。void
addSelectionRows(int[] rows)
将每个指定行的路径添加到当前选择。void
addTreeExpansionListener(TreeExpansionListener tel)
为TreeExpansion
事件添加一个侦听TreeExpansion
。void
addTreeSelectionListener(TreeSelectionListener tsl)
为TreeSelection
事件添加一个侦听TreeSelection
。void
addTreeWillExpandListener(TreeWillExpandListener tel)
为TreeWillExpand
事件添加一个侦听TreeWillExpand
。void
cancelEditing()
取消当前编辑会话。void
clearSelection()
清除选择。protected void
clearToggledPaths()
清除切换树路径的缓存。void
collapsePath(TreePath path)
确保由指定路径标识的节点被折叠和可视。void
collapseRow(int row)
确保指定行中的节点已折叠。String
convertValueToText(Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
由渲染器调用,将指定的值转换为文本。protected static TreeModel
createTreeModel(Object value)
返回包装指定对象的TreeModel
。protected TreeModelListener
createTreeModelListener()
创建并返回一个TreeModelHandler
的实例。void
expandPath(TreePath path)
确保由指定路径标识的节点被扩展和可视。void
expandRow(int row)
确保指定行中的节点被扩展和可见。void
fireTreeCollapsed(TreePath path)
通知所有在此事件类型上通知有兴趣的听众。void
fireTreeExpanded(TreePath path)
通知所有在此事件类型上通知有兴趣的听众。void
fireTreeWillCollapse(TreePath path)
通知所有在此事件类型上通知有兴趣的听众。void
fireTreeWillExpand(TreePath path)
通知所有在此事件类型上通知有兴趣的听众。protected void
fireValueChanged(TreeSelectionEvent e)
通知所有在此事件类型上通知有兴趣的听众。AccessibleContext
getAccessibleContext()
获取与此JTree关联的AccessibleContext。TreePath
getAnchorSelectionPath()
返回标识为锚点的路径。TreeCellEditor
getCellEditor()
返回用于编辑树中条目的编辑器。TreeCellRenderer
getCellRenderer()
返回正在渲染每个单元格的当前TreeCellRenderer
。TreePath
getClosestPathForLocation(int x, int y)
返回最接近x,y的节点的路径。int
getClosestRowForLocation(int x, int y)
返回到最接近x,y的节点的行。protected static TreeModel
getDefaultTreeModel()
创建并返回样品TreeModel
。protected Enumeration<TreePath>
getDescendantToggledPaths(TreePath parent)
返回Enumeration
的TreePaths
,已经扩展为parent
后代。boolean
getDragEnabled()
返回是否启用自动拖动处理。JTree.DropLocation
getDropLocation()
返回在组件中的DnD操作期间该组件应该可视地指示为放置位置的位置,如果没有显示当前位置,则返回null
。DropMode
getDropMode()
返回此组件的放置模式。TreePath
getEditingPath()
返回当前正在编辑的元素的路径。Enumeration<TreePath>
getExpandedDescendants(TreePath parent)
返回一个Enumeration
路径的后裔parent
当前展开。boolean
getExpandsSelectedPaths()
返回expandsSelectedPaths
属性。boolean
getInvokesStopCellEditing()
返回指示器,指示编辑中断时会发生什么。Object
getLastSelectedPathComponent()
返回所选路径的最后一个路径组件。TreePath
getLeadSelectionPath()
返回标识为铅的路径。int
getLeadSelectionRow()
返回与引导路径对应的行索引。int
getMaxSelectionRow()
返回最大的选定行。int
getMinSelectionRow()
返回最小的选定行。TreeModel
getModel()
返回提供数据的TreeModel
。TreePath
getNextMatch(String prefix, int startingRow, Position.Bias bias)
将TreePath返回到以前缀开头的下一个树元素。protected TreePath[]
getPathBetweenRows(int index0, int index1)
返回指定行之间的路径(包括)。Rectangle
getPathBounds(TreePath path)
返回指定节点将被绘制的Rectangle
。TreePath
getPathForLocation(int x, int y)
返回指定位置节点的路径。TreePath
getPathForRow(int row)
返回指定行的路径。Dimension
getPreferredScrollableViewportSize()
返回JTree
的首选显示尺寸。Rectangle
getRowBounds(int row)
返回指定行中的节点被绘制的Rectangle
。int
getRowCount()
返回可见节点的数量。int
getRowForLocation(int x, int y)
返回指定位置的行。int
getRowForPath(TreePath path)
返回显示由指定路径标识的节点的行。int
getRowHeight()
返回每行的高度。int
getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
返回块增量,这是高度或宽度的量visibleRect
,基于orientation
。boolean
getScrollableTracksViewportHeight()
返回false以指示视口的高度不会确定表的高度,除非树的首选高度小于视口高度。boolean
getScrollableTracksViewportWidth()
返回false以指示视口的宽度不会确定表的宽度,除非树的首选宽度小于视口宽度。int
getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
返回滚动时增加的量。boolean
getScrollsOnExpand()
返回scrollsOnExpand
属性的值。int
getSelectionCount()
返回所选节点数。TreeSelectionModel
getSelectionModel()
返回模型进行选择。TreePath
getSelectionPath()
返回到第一个选定节点的路径。TreePath[]
getSelectionPaths()
返回所有选定值的路径。int[]
getSelectionRows()
返回当前选定的所有行。boolean
getShowsRootHandles()
返回showsRootHandles
属性的值。int
getToggleClickCount()
返回扩展或关闭节点所需的鼠标点击次数。String
getToolTipText(MouseEvent event)
覆盖JComponent
的getToolTipText
方法,以便允许使用渲染器的提示,如果它具有文本集。TreeExpansionListener[]
getTreeExpansionListeners()
返回使用addTreeExpansionListener()添加到此JTree的所有TreeExpansionListener
的数组。TreeSelectionListener[]
getTreeSelectionListeners()
返回使用addTreeSelectionListener()添加到此JTree的所有TreeSelectionListener
的数组。TreeWillExpandListener[]
getTreeWillExpandListeners()
返回使用addTreeWillExpandListener()添加到此JTree的所有TreeWillExpandListener
的数组。TreeUI
getUI()
返回渲染此组件的L&F对象。String
getUIClassID()
返回呈现此组件的L&F类的名称。int
getVisibleRowCount()
返回显示区域中显示的行数。boolean
hasBeenExpanded(TreePath path)
如果已经扩展了路径标识的节点,则返回true。boolean
isCollapsed(int row)
如果指定的显示行中的节点折叠,则返回true。boolean
isCollapsed(TreePath path)
如果path标识的值当前已折叠,则返回true,如果当前没有显示路径中的任何值,则返回false。boolean
isEditable()
如果树可编辑,则返回true。boolean
isEditing()
如果正在编辑树,则返回true。boolean
isExpanded(int row)
如果指定的显示行中的节点当前被展开,则返回true。boolean
isExpanded(TreePath path)
如果路径标识的节点当前被展开,则返回true,boolean
isFixedRowHeight()
如果每个显示行的高度是固定大小,则返回true。boolean
isLargeModel()
如果将树配置为大型模型,则返回true。boolean
isPathEditable(TreePath path)
退货isEditable
。boolean
isPathSelected(TreePath path)
如果路径标识的项目当前被选中,则返回true。boolean
isRootVisible()
如果显示树的根节点,则返回true。boolean
isRowSelected(int row)
如果选择了由行标识的节点,则返回true。boolean
isSelectionEmpty()
如果选择当前为空,则返回true。boolean
isVisible(TreePath path)
如果由path标识的值当前是可视的,则返回true,这意味着它是根或全部的父对象被展开。void
makeVisible(TreePath path)
确保通过路径识别的节点当前是可见的。protected String
paramString()
返回此JTree
的字符串表示JTree
。protected boolean
removeDescendantSelectedPaths(TreePath path, boolean includePath)
删除选择中任何作为后代的路径为path
。protected void
removeDescendantToggledPaths(Enumeration<TreePath> toRemove)
删除已扩展的TreePaths
中的toRemove
任何后代。void
removeSelectionInterval(int index0, int index1)
从选择中删除指定的行(包括)。void
removeSelectionPath(TreePath path)
从当前选择中删除由指定路径标识的节点。void
removeSelectionPaths(TreePath[] paths)
从当前选择中删除由指定路径标识的节点。void
removeSelectionRow(int row)
从当前选择中删除索引号为row
的行。void
removeSelectionRows(int[] rows)
删除在每个指定行中选择的行。void
removeTreeExpansionListener(TreeExpansionListener tel)
移除TreeExpansion
事件的侦听TreeExpansion
。void
removeTreeSelectionListener(TreeSelectionListener tsl)
删除一个TreeSelection
监听器。void
removeTreeWillExpandListener(TreeWillExpandListener tel)
删除TreeWillExpand
事件的侦听TreeWillExpand
。void
scrollPathToVisible(TreePath path)
确保路径中的所有路径组件都已扩展(除了最后一个路径组件)并滚动,以便显示由路径标识的节点。void
scrollRowToVisible(int row)
滚动由行标识的项目,直到显示。void
setAnchorSelectionPath(TreePath newPath)
设置标识为锚点的路径。void
setCellEditor(TreeCellEditor cellEditor)
设置单元格编辑器。void
setCellRenderer(TreeCellRenderer x)
设置将用于绘制每个单元格的TreeCellRenderer
。void
setDragEnabled(boolean b)
打开或关闭自动拖动处理。void
setDropMode(DropMode dropMode)
设置此组件的下拉模式。void
setEditable(boolean flag)
确定树是否可编辑。protected void
setExpandedState(TreePath path, boolean state)
设置这个JTree
的扩展状态。void
setExpandsSelectedPaths(boolean newValue)
配置expandsSelectedPaths
属性。void
setInvokesStopCellEditing(boolean newValue)
确定通过在树中选择另一个节点,树的数据更改或其他方法中断编辑时会发生什么。void
setLargeModel(boolean newValue)
指定UI是否应该使用大型模型。void
setLeadSelectionPath(TreePath newPath)
将路径标识为引导。void
setModel(TreeModel newModel)
设置将提供数据的TreeModel
。void
setRootVisible(boolean rootVisible)
确定TreeModel
中的TreeModel
是否可见。void
setRowHeight(int rowHeight)
设置每个单元格的高度(以像素为单位)。void
setScrollsOnExpand(boolean newValue)
设置scrollsOnExpand
属性,它决定树可能滚动以显示以前隐藏的子项。void
setSelectionInterval(int index0, int index1)
选择指定间隔的行(含)。void
setSelectionModel(TreeSelectionModel selectionModel)
设置树的选择模型。void
setSelectionPath(TreePath path)
选择由指定路径标识的节点。void
setSelectionPaths(TreePath[] paths)
选择由指定的路径数组标识的节点。void
setSelectionRow(int row)
选择显示中指定行的节点。void
setSelectionRows(int[] rows)
选择与显示中每个指定行对应的节点。void
setShowsRootHandles(boolean newValue)
设置showsRootHandles
属性的值,该属性指定是否显示节点句柄。void
setToggleClickCount(int clickCount)
设置节点将展开或关闭之前的鼠标点击次数。void
setUI(TreeUI ui)
设置渲染此组件的L&F对象。void
setVisibleRowCount(int newCount)
设置要显示的行数。void
startEditingAtPath(TreePath path)
选择由指定路径标识的节点,并启动编辑。boolean
stopEditing()
结束当前编辑会话。void
treeDidChange()
当树已经发生变化时,我们需要调整边界大小,但还不够,我们需要删除扩展节点集(例如,节点被扩展或折叠,或节点被插入到树中)。void
updateUI()
来自UIManager
通知说L&F已经改变了。-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
-
-
-
字段详细信息
-
treeModel
protected transient TreeModel treeModel
定义由该对象显示的树的模型。
-
selectionModel
protected transient TreeSelectionModel selectionModel
模拟此树中所选节点的集合。
-
rootVisible
protected boolean rootVisible
如果显示根节点,则为真,如果子节点是最高可见节点,则为false。
-
cellRenderer
protected transient TreeCellRenderer cellRenderer
用于绘制节点的单元格。 如果是null
,则UI使用默认值cellRenderer
。
-
rowHeight
protected int rowHeight
每个显示行使用的高度。 如果这是<= 0,则渲染器确定每行的高度。
-
showsRootHandles
protected boolean showsRootHandles
如果句柄显示在树的最上层,则为true。句柄是一个小图标,显示邻近节点,允许用户单击一次以展开或折叠节点。 公共接口显示可扩展的节点的加号(+)和可折叠的节点的减号( - )。 总是显示处于最高级别以下的节点的句柄。
如果
rootVisible
设置指定要显示根节点,那么它是最高级别的唯一节点。 如果根节点未显示,则其所有子节点都位于树的最高层。 总是显示除最上面之外的节点的句柄。如果根节点不可见,则通常很有可能使该值为true。 否则,树看起来就像一个列表,用户可能不知道“列表条目”实际上是树节点。
- 另请参见:
-
rootVisible
-
selectionRedirector
protected transient JTree.TreeSelectionRedirector selectionRedirector
创建一个新的事件,并将其从selectionListeners
。
-
cellEditor
protected transient TreeCellEditor cellEditor
编辑条目。 默认值为null
(树不可编辑)。
-
editable
protected boolean editable
树可编辑吗? 默认值为false。
-
largeModel
protected boolean largeModel
这棵树是大模型吗? 这是一个代码优化设置。 当所有节点的单元格高度相同时,可以使用大型模型。 然后,UI将缓存很少的信息,而不断地消息模型。 没有大型模型,UI缓存大部分信息,导致对模型的方法调用较少。这个值只是UI的一个建议。 并不是所有的UI都将利用它。 默认值为false。
-
visibleRowCount
protected int visibleRowCount
一次可见的行数。 该值用于Scrollable
接口。 它确定显示区域的首选大小。
-
invokesStopCellEditing
protected boolean invokesStopCellEditing
如果为真,当通过选择更改来停止编辑时,将调用树形更改或其他方式中的数据stopCellEditing
,并保存更改。 如果为false,则调用cancelCellEditing
,并cancelCellEditing
更改。 默认值为false。
-
scrollsOnExpand
protected boolean scrollsOnExpand
如果为true,当节点被展开时,许多后代被滚动以便可见。
-
toggleClickCount
protected int toggleClickCount
节点扩展前的鼠标点击次数
-
treeModelListener
protected transient TreeModelListener treeModelListener
更新expandedState
。
-
CELL_RENDERER_PROPERTY
public static final String CELL_RENDERER_PROPERTY
绑定属性名称为cellRenderer
。- 另请参见:
- Constant Field Values
-
TREE_MODEL_PROPERTY
public static final String TREE_MODEL_PROPERTY
绑定属性名称为treeModel
。- 另请参见:
- Constant Field Values
-
ROOT_VISIBLE_PROPERTY
public static final String ROOT_VISIBLE_PROPERTY
绑定属性名称为rootVisible
。- 另请参见:
- Constant Field Values
-
SHOWS_ROOT_HANDLES_PROPERTY
public static final String SHOWS_ROOT_HANDLES_PROPERTY
绑定属性名称为showsRootHandles
。- 另请参见:
- Constant Field Values
-
ROW_HEIGHT_PROPERTY
public static final String ROW_HEIGHT_PROPERTY
绑定属性名称为rowHeight
。- 另请参见:
- Constant Field Values
-
CELL_EDITOR_PROPERTY
public static final String CELL_EDITOR_PROPERTY
绑定属性名称为cellEditor
。- 另请参见:
- Constant Field Values
-
EDITABLE_PROPERTY
public static final String EDITABLE_PROPERTY
绑定属性名称为editable
。- 另请参见:
- Constant Field Values
-
LARGE_MODEL_PROPERTY
public static final String LARGE_MODEL_PROPERTY
绑定属性名称为largeModel
。- 另请参见:
- Constant Field Values
-
SELECTION_MODEL_PROPERTY
public static final String SELECTION_MODEL_PROPERTY
选择模型的绑定属性名称。- 另请参见:
- Constant Field Values
-
VISIBLE_ROW_COUNT_PROPERTY
public static final String VISIBLE_ROW_COUNT_PROPERTY
绑定属性名称为visibleRowCount
。- 另请参见:
- Constant Field Values
-
INVOKES_STOP_CELL_EDITING_PROPERTY
public static final String INVOKES_STOP_CELL_EDITING_PROPERTY
绑定属性名称为messagesStopCellEditing
。- 另请参见:
- Constant Field Values
-
SCROLLS_ON_EXPAND_PROPERTY
public static final String SCROLLS_ON_EXPAND_PROPERTY
绑定属性名称为scrollsOnExpand
。- 另请参见:
- Constant Field Values
-
TOGGLE_CLICK_COUNT_PROPERTY
public static final String TOGGLE_CLICK_COUNT_PROPERTY
绑定属性名称为toggleClickCount
。- 另请参见:
- Constant Field Values
-
LEAD_SELECTION_PATH_PROPERTY
public static final String LEAD_SELECTION_PATH_PROPERTY
绑定属性名称为leadSelectionPath
。- 从以下版本开始:
- 1.3
- 另请参见:
- Constant Field Values
-
ANCHOR_SELECTION_PATH_PROPERTY
public static final String ANCHOR_SELECTION_PATH_PROPERTY
锚点选择路径的绑定属性名称。- 从以下版本开始:
- 1.3
- 另请参见:
- Constant Field Values
-
EXPANDS_SELECTED_PATHS_PROPERTY
public static final String EXPANDS_SELECTED_PATHS_PROPERTY
用于展开所选路径属性的绑定属性名称- 从以下版本开始:
- 1.3
- 另请参见:
- Constant Field Values
-
-
构造方法详细信息
-
JTree
public JTree()
返回一个JTree
的样品模型。 树使用的默认模型将叶节点定义为没有子节点的任何节点。
-
JTree
public JTree(Object[] value)
返回一个JTree
,其中指定数组的每个元素作为未显示的新根节点的子节点。 默认情况下,树将叶节点定义为没有子节点的任何节点。- 参数
-
value
-的阵列Object
小号 - 另请参见:
-
DefaultTreeModel.asksAllowsChildren
-
JTree
public JTree(Vector<?> value)
返回一个JTree
,其中指定的Vector
每个元素作为未显示的新根节点的子节点。 默认情况下,树将叶节点定义为没有子节点的任何节点。- 参数
-
value
- aVector
- 另请参见:
-
DefaultTreeModel.asksAllowsChildren
-
JTree
public JTree(Hashtable<?,?> value)
返回一个JTree
创建的Hashtable
,它不会用root显示。HashTable
中的每个键值/值对中的HashTable
将成为新根节点的子节点。 默认情况下,树将叶节点定义为没有子节点的任何节点。- 参数
-
value
- aHashtable
- 另请参见:
-
DefaultTreeModel.asksAllowsChildren
-
JTree
public JTree(TreeNode root)
返回一个JTree
,其中指定的TreeNode
作为其根的TreeNode
,显示根节点。 默认情况下,树将叶节点定义为没有子节点的任何节点。- 参数
-
root
- 一个TreeNode
对象 - 另请参见:
-
DefaultTreeModel.asksAllowsChildren
-
JTree
public JTree(TreeNode root, boolean asksAllowsChildren)
以指定的TreeNode
作为其根,返回一个JTree
,显示根节点,并以指定的方式决定节点是否为叶节点。- 参数
-
root
- 一个TreeNode
对象 -
asksAllowsChildren
- 如果为false,任何没有子节点的节点都是叶节点; 如果为true,则只有不允许孩子的节点才是叶节点 - 另请参见:
-
DefaultTreeModel.asksAllowsChildren
-
JTree
@ConstructorProperties("model") public JTree(TreeModel newModel)
返回显示根节点的JTree
的实例 - 使用指定的数据模型创建树。- 参数
-
newModel
- 用作数据模型的TreeModel
-
-
方法详细信息
-
getDefaultTreeModel
protected static TreeModel getDefaultTreeModel()
创建并返回样品TreeModel
。 主要用于豆制品展示有趣的东西。- 结果
-
默认为
TreeModel
-
createTreeModel
protected static TreeModel createTreeModel(Object value)
返回包装指定对象的TreeModel
。 如果对象是:- 一个
Object
的阵列, - 一个
Hashtable
,或 - 一个
Vector
"root"
。- 参数
-
value
-在Object
用作基础TreeModel
- 结果
-
一个
TreeModel
包装指定的对象
- 一个
-
getUI
public TreeUI getUI()
返回渲染此组件的L&F对象。- 重写:
-
getUI
在JComponent
- 结果
-
呈现此组件的
TreeUI
对象
-
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component\'s LookAndFeel.") public void setUI(TreeUI ui)
设置渲染此组件的L&F对象。这是一个绑定属性。
- 参数
-
ui
-TreeUI
L&F对象 - 另请参见:
-
UIDefaults.getUI(javax.swing.JComponent)
-
updateUI
public void updateUI()
来自UIManager
通知说L&F已经改变了。 用UIManager
替换最新版本的当前UI对象。- 重写:
-
updateUI
在JComponent
- 另请参见:
-
JComponent.updateUI()
-
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
返回呈现此组件的L&F类的名称。- 重写:
-
getUIClassID
在JComponent
- 结果
- 字符串“TreeUI”
- 另请参见:
-
JComponent.getUIClassID()
,UIDefaults.getUI(javax.swing.JComponent)
-
getCellRenderer
public TreeCellRenderer getCellRenderer()
返回正在渲染每个单元格的当前TreeCellRenderer
。- 结果
-
这是渲染每个单元格的
TreeCellRenderer
-
setCellRenderer
@BeanProperty(description="The TreeCellRenderer that will be used to draw each cell.") public void setCellRenderer(TreeCellRenderer x)
设置将用于绘制每个单元格的TreeCellRenderer
。这是一个绑定属性。
- 参数
-
x
- 要渲染每个单元格的TreeCellRenderer
-
setEditable
@BeanProperty(description="Whether the tree is editable.") public void setEditable(boolean flag)
确定树是否可编辑。 如果新设置与现有设置不同,则触发属性更改事件。这是一个绑定属性。
- 参数
-
flag
- 一个布尔值,如果树是可编辑的,则为true
-
isEditable
public boolean isEditable()
如果树可编辑,则返回true。- 结果
- 如果树是可编辑的,则为true
-
setCellEditor
@BeanProperty(description="The cell editor. A null value implies the tree cannot be edited.") public void setCellEditor(TreeCellEditor cellEditor)
设置单元格编辑器。 一个null
值意味着树不能被编辑。 如果这表示cellEditor
中的cellEditor
,则在所有侦听器上调用propertyChange
方法。这是一个绑定属性。
- 参数
-
cellEditor
- 要使用的TreeCellEditor
-
getCellEditor
public TreeCellEditor getCellEditor()
返回用于编辑树中条目的编辑器。- 结果
-
在
TreeCellEditor
使用,或null
如果树无法编辑
-
getModel
public TreeModel getModel()
返回提供数据的TreeModel
。- 结果
-
提供数据的
TreeModel
-
setModel
@BeanProperty(description="The TreeModel that will provide the data.") public void setModel(TreeModel newModel)
设置将提供数据的TreeModel
。这是一个绑定属性。
- 参数
-
newModel
- 这是提供数据的TreeModel
-
isRootVisible
public boolean isRootVisible()
如果显示树的根节点,则返回true。- 结果
- 如果显示树的根节点,则为true
- 另请参见:
-
rootVisible
-
setRootVisible
@BeanProperty(description="Whether or not the root node from the TreeModel is visible.") public void setRootVisible(boolean rootVisible)
确定来自TreeModel
是否可见。这是一个绑定属性。
- 参数
-
rootVisible
- 如果要显示树的根节点,rootVisible
true - 另请参见:
-
rootVisible
-
setShowsRootHandles
@BeanProperty(description="Whether the node handles are to be displayed.") public void setShowsRootHandles(boolean newValue)
设置showsRootHandles
属性的值,该属性指定是否显示节点句柄。 此属性的默认值取决于用于创建JTree
的构造JTree
。 有些外观和感觉可能不支持手柄; 他们将忽略此属性。这是一个绑定属性。
- 参数
-
newValue
-true
如果显示根句柄; 否则,false
- 另请参见:
-
showsRootHandles
,getShowsRootHandles()
-
getShowsRootHandles
public boolean getShowsRootHandles()
返回showsRootHandles
属性的值。- 结果
-
该值为
showsRootHandles
属性 - 另请参见:
-
showsRootHandles
-
setRowHeight
@BeanProperty(description="The height of each cell.") public void setRowHeight(int rowHeight)
设置每个单元格的高度(以像素为单位)。 如果指定的值小于或等于零,则会查询当前单元格渲染器对于每一行的高度。这是一个绑定属性。
- 参数
-
rowHeight
- 每个单元格的高度,以像素为单位
-
getRowHeight
public int getRowHeight()
返回每行的高度。 如果返回的值小于或等于0,则每行的高度由渲染器确定。- 结果
- 每行的高度
-
isFixedRowHeight
@BeanProperty(bound=false) public boolean isFixedRowHeight()
如果每个显示行的高度是固定大小,则返回true。- 结果
- 如果每行的高度是固定大小,则为true
-
setLargeModel
@BeanProperty(description="Whether the UI should use a large model.") public void setLargeModel(boolean newValue)
指定UI是否应该使用大型模型。 (并非所有的UI都将实现此。)为LARGE_MODEL_PROPERTY触发属性更改。这是一个绑定属性。
- 参数
-
newValue
- 真的建议一个大型的UI模型 - 另请参见:
-
largeModel
-
isLargeModel
public boolean isLargeModel()
如果将树配置为大型模型,则返回true。- 结果
- 如果建议使用大型模型,则为true
- 另请参见:
-
largeModel
-
setInvokesStopCellEditing
@BeanProperty(description="Determines what happens when editing is interrupted, selecting another node in the tree, a change in the tree\'s data, or some other means.") public void setInvokesStopCellEditing(boolean newValue)
确定通过在树中选择另一个节点,树的数据更改或其他方法中断编辑时会发生什么。 将此属性设置为true
会导致编辑中断时自动保存更改。为INVOKES_STOP_CELL_EDITING_PROPERTY触发属性更改。
- 参数
-
newValue
- true表示编辑中断时调用了stopCellEditing
,并保存数据; false表示cancelCellEditing
被调用,更改丢失
-
getInvokesStopCellEditing
public boolean getInvokesStopCellEditing()
返回指示器,指示编辑中断时会发生什么。- 结果
- 说明编辑中断时会发生什么的指标
- 另请参见:
-
setInvokesStopCellEditing(boolean)
-
setScrollsOnExpand
@BeanProperty(description="Indicates if a node descendant should be scrolled when expanded.") public void setScrollsOnExpand(boolean newValue)
设置scrollsOnExpand
属性,它决定树可能滚动以显示以前隐藏的子项。 如果此属性为true
(默认值),当节点扩展时,树可以使用滚动来使节点的后代的最大可能数量可见。 在一些外观和感觉中,树可能不需要在展开时滚动; 那些外观和感觉会忽略这个属性。这是一个绑定属性。
- 参数
-
newValue
-false
以禁用扩展的滚动;true
启用它 - 另请参见:
-
getScrollsOnExpand()
-
getScrollsOnExpand
public boolean getScrollsOnExpand()
返回scrollsOnExpand
属性的值。- 结果
-
的价值
scrollsOnExpand
属性
-
setToggleClickCount
@BeanProperty(description="Number of clicks before a node will expand/collapse.") public void setToggleClickCount(int clickCount)
设置节点将展开或关闭之前的鼠标点击次数。 默认是两个。这是一个绑定属性。
- 参数
-
clickCount
- 获取节点扩展或关闭的鼠标点击次数 - 从以下版本开始:
- 1.3
-
getToggleClickCount
public int getToggleClickCount()
返回扩展或关闭节点所需的鼠标点击次数。- 结果
- 节点扩展之前的鼠标点击次数
- 从以下版本开始:
- 1.3
-
setExpandsSelectedPaths
@BeanProperty(description="Indicates whether changes to the selection should make the parent of the path visible.") public void setExpandsSelectedPaths(boolean newValue)
配置expandsSelectedPaths
属性。 如果为真,任何时候选择改变,无论是通过TreeSelectionModel
,或者所提供的覆盖方法JTree
,该TreePath
的父母将扩大使它们可见(可见是指父路径展开,不一定可见矩形JTree
)。 如果为false,当选择更改时,父节点不会显示(其父项全部展开)。 如果您希望使您的选择模型保持不总是可见的路径(所有父母展开),这很有用。这是一个绑定属性。
- 参数
-
newValue
- 新值为expandsSelectedPaths
- 从以下版本开始:
- 1.3
-
getExpandsSelectedPaths
public boolean getExpandsSelectedPaths()
返回expandsSelectedPaths
属性。- 结果
- 如果选择更改导致父路径被扩展,则为true
- 从以下版本开始:
- 1.3
- 另请参见:
-
setExpandsSelectedPaths(boolean)
-
setDragEnabled
@BeanProperty(bound=false, description="determines whether automatic drag handling is enabled") public void setDragEnabled(boolean b)
打开或关闭自动拖动处理。 为了启用自动拖动处理,此属性应设置为true
,树的TransferHandler
需要为non-null
。dragEnabled
属性的默认值为false
。尊重这个属性的工作,并承认用户拖动手势,在于外观和感觉的实现,特别是树的
TreeUI
。 当启用自动拖动处理时,大多数外观和感觉(包括BasicLookAndFeel
子类)可以在用户按住鼠标按钮上移动一个项目后开始拖放操作,然后将鼠标移动几个像素。 因此,将此属性设置为true
可以对选择行为有一个微妙的影响。如果使用忽略此属性的外观,您仍然可以通过在树的
TransferHandler
上调用exportAsDrag
来开始拖放操作。- 参数
-
b
- 是否启用自动拖动处理 - 异常
-
HeadlessException
- 如果b
是true
和GraphicsEnvironment.isHeadless()
返回true
- 从以下版本开始:
- 1.4
- 另请参见:
-
GraphicsEnvironment.isHeadless()
,getDragEnabled()
,JComponent.setTransferHandler(javax.swing.TransferHandler)
,TransferHandler
-
getDragEnabled
public boolean getDragEnabled()
返回是否启用自动拖动处理。- 结果
-
的价值
dragEnabled
属性 - 从以下版本开始:
- 1.4
- 另请参见:
-
setDragEnabled(boolean)
-
setDropMode
public final void setDropMode(DropMode dropMode)
设置此组件的下拉模式。 为了向后兼容,此属性的默认值为DropMode.USE_SELECTION
。 但是,为了改善用户体验,建议使用其他模式之一。 例如,DropMode.ON
提供了显示所选项目的类似行为,但这样做并不影响树中的实际选择。JTree
支持以下放置模式:-
DropMode.USE_SELECTION
-
DropMode.ON
-
DropMode.INSERT
-
DropMode.ON_OR_INSERT
如果该组件具有
TransferHandler
接受丢弃,则丢弃模式才有意义。- 参数
-
dropMode
- 使用的下拉模式 - 异常
-
IllegalArgumentException
- 如果不支持拖放模式或null
- 从以下版本开始:
- 1.6
- 另请参见:
-
getDropMode()
,getDropLocation()
,JComponent.setTransferHandler(javax.swing.TransferHandler)
,TransferHandler
-
-
getDropMode
public final DropMode getDropMode()
返回此组件的放置模式。- 结果
- 该组件的放置模式
- 从以下版本开始:
- 1.6
- 另请参见:
-
setDropMode(javax.swing.DropMode)
-
getDropLocation
@BeanProperty(bound=false) public final JTree.DropLocation getDropLocation()
返回在组件中的DnD操作期间该组件应该可视地指示为放置位置的位置,如果没有显示当前位置,则返回null
。此方法不适用于从
TransferHandler
查询放置位置,因为放置位置仅在TransferHandler
的canImport
已返回并已允许显示位置之后设置。当此属性更改时,组件将触发名为“dropLocation”的属性更改事件。
- 结果
- 下降位置
- 从以下版本开始:
- 1.6
- 另请参见:
-
setDropMode(javax.swing.DropMode)
,TransferHandler.canImport(TransferHandler.TransferSupport)
-
isPathEditable
public boolean isPathEditable(TreePath path)
退货isEditable
。 这在编辑开始之前从UI调用,以确保可以编辑给定的路径。 这是作为子类添加过滤器编辑的一个入口点,而无需诉诸创建一个新的编辑器。- 参数
-
path
- 标识节点的TreePath
- 结果
- 如果每个父节点和节点本身都是可编辑的,则为true
- 另请参见:
-
isEditable()
-
getToolTipText
public String getToolTipText(MouseEvent event)
覆盖JComponent
的getToolTipText
方法,以便允许渲染器的提示被使用,如果它有文本集。注意:对于
JTree
要正确显示其渲染器的工具提示,JTree
必须是已注册的组件,具有ToolTipManager
。 这可以通过调用ToolTipManager.sharedInstance().registerComponent(tree)
来完成。 这不是自动完成的!- 重写:
-
getToolTipText
在JComponent
- 参数
-
event
-在MouseEvent
发起ToolTip
显示 - 结果
-
包含工具提示或字符串
null
如果event
为空
-
convertValueToText
public String convertValueToText(Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
由渲染器调用,将指定的值转换为文本。 此实现返回value.toString
,忽略所有其他参数。 为了控制转换,子类化此方法并使用您需要的任何参数。- 参数
-
value
-Object
转换为文本 -
selected
- 如果选择了节点,则为true -
expanded
- 如果节点被展开,expanded
true -
leaf
- 如果节点是叶节点,leaf
true -
row
- 指定节点显示行的整数,其中0是显示中的第一行 -
hasFocus
- 如果节点具有焦点,hasFocus
true - 结果
-
表示节点的值的
String
-
getRowCount
@BeanProperty(bound=false) public int getRowCount()
返回可见节点的数量。 如果所有的父项都被扩展,则可以查看节点。 如果isRootVisible()
为true
则根目录仅包含在此计数中。 如果UI尚未设置,则返回0
。- 结果
- 可视节点的数量
-
setSelectionPath
public void setSelectionPath(TreePath path)
选择由指定路径标识的节点。 如果路径的任何组件被隐藏(在折叠的节点下),并且getExpandsSelectedPaths
为true,则它将被暴露(使可见)。- 参数
-
path
- 指定要选择的节点的TreePath
-
setSelectionPaths
public void setSelectionPaths(TreePath[] paths)
选择由指定的路径数组标识的节点。 如果任何路径中的任何组件隐藏(在折叠的节点下),并且getExpandsSelectedPaths
为true,那么它将被暴露(使可见)。- 参数
-
paths
- 指定要选择的节点的TreePath
对象的数组
-
setLeadSelectionPath
@BeanProperty(description="Lead selection path") public void setLeadSelectionPath(TreePath newPath)
将路径标识为引导。 铅可能不被选中。 引导不是由JTree
维护,而是UI会更新它。这是一个绑定属性。
- 参数
-
newPath
- 新的引导路径 - 从以下版本开始:
- 1.3
-
setAnchorSelectionPath
@BeanProperty(description="Anchor selection path") public void setAnchorSelectionPath(TreePath newPath)
设置标识为锚点的路径。 该锚不是由JTree
维护,而是UI会更新它。这是一个绑定属性。
- 参数
-
newPath
- 新的锚定路径 - 从以下版本开始:
- 1.3
-
setSelectionRow
public void setSelectionRow(int row)
选择显示中指定行的节点。- 参数
-
row
- 要选择的行,其中0是显示中的第一行
-
setSelectionRows
public void setSelectionRows(int[] rows)
选择与显示中每个指定行对应的节点。 如果rows
的特定元素为<0或> =getRowCount
,则将被忽略。 如果rows
中的元素rows
是有效行,则选择将被清除。 那就是clearSelection
被调用了。- 参数
-
rows
- 指定要选择的行的int数组,其中0表示显示中的第一行
-
addSelectionPath
public void addSelectionPath(TreePath path)
将由指定的TreePath
标识的节点添加到当前选择。 如果路径的任何组件不可见,并且getExpandsSelectedPaths
为true,则显示为可见。请注意,
JTree
不允许重复节点作为同一父项下的子节点存在 - 每个兄弟节点必须是唯一对象。- 参数
-
path
- 要添加的TreePath
-
addSelectionPaths
public void addSelectionPaths(TreePath[] paths)
将路径数组中的每个路径添加到当前选择。 如果任何路径的任何组件不可见,并且getExpandsSelectedPaths
为true,则显示为可见。请注意,
JTree
不允许重复节点作为同一父项下的子节点存在 - 每个兄弟节点必须是唯一对象。- 参数
-
paths
- 指定要添加的节点的TreePath
对象的数组
-
addSelectionRow
public void addSelectionRow(int row)
将指定行的路径添加到当前选择。- 参数
-
row
- 指定要添加的节点的行的整数,其中0是显示中的第一行
-
addSelectionRows
public void addSelectionRows(int[] rows)
将每个指定行的路径添加到当前选择。- 参数
-
rows
- 指定要添加的行的int数组,其中0表示显示中的第一行
-
getLastSelectedPathComponent
@BeanProperty(bound=false) public Object getLastSelectedPathComponent()
返回所选路径的最后一个路径组件。 这是一个方便的方法getSelectionModel().getSelectionPath().getLastPathComponent()
。 这通常仅在选择具有一个路径时有用。- 结果
-
所选路径的最后一个路径组件,如果没有选择,
null
- 另请参见:
-
TreePath.getLastPathComponent()
-
getLeadSelectionPath
public TreePath getLeadSelectionPath()
返回标识为铅的路径。- 结果
- 路径被确定为铅
-
getAnchorSelectionPath
public TreePath getAnchorSelectionPath()
返回标识为锚点的路径。- 结果
- 路径被确定为锚点
- 从以下版本开始:
- 1.3
-
getSelectionPath
public TreePath getSelectionPath()
返回到第一个选定节点的路径。- 结果
-
该
TreePath
为第一选择的节点,或null
如果当前没有选择任何
-
getSelectionPaths
public TreePath[] getSelectionPaths()
返回所有选定值的路径。- 结果
-
一组
TreePath
对象,指示所选节点,或null
如果当前没有选择
-
getSelectionRows
public int[] getSelectionRows()
返回当前选定的所有行。 这种方法简单地转发到了TreeSelectionModel
。 如果没有选择null
或将返回一个空数组,基于TreeSelectionModel
实现。- 结果
- 一个整数数组,用于标识所有当前选定的行,其中0是显示中的第一行
-
getSelectionCount
@BeanProperty(bound=false) public int getSelectionCount()
返回所选节点数。- 结果
- 所选节点数
-
getMinSelectionRow
@BeanProperty(bound=false) public int getMinSelectionRow()
返回最小的选定行。 如果选择为空,或者所选择的路径都不可见,则返回-1
。- 结果
- 最小的选定行
-
getMaxSelectionRow
@BeanProperty(bound=false) public int getMaxSelectionRow()
返回最大的选定行。 如果选择为空,或者所选路径都不可见,则返回-1
。- 结果
- 最大的选定行
-
getLeadSelectionRow
@BeanProperty(bound=false) public int getLeadSelectionRow()
返回与引导路径对应的行索引。- 结果
-
一个给出引导路径的行索引的整数,其中0是显示中的第一行;
如果
leadPath
是null
-1
-
isPathSelected
public boolean isPathSelected(TreePath path)
如果路径标识的项目当前被选中,则返回true。- 参数
-
path
- a标识一个节点的TreePath
- 结果
- 如果选择了节点,则为true
-
isRowSelected
public boolean isRowSelected(int row)
如果选择了由行标识的节点,则返回true。- 参数
-
row
- 指定显示行的整数,其中0是显示中的第一行 - 结果
- 如果选择了节点,则为true
-
getExpandedDescendants
public Enumeration<TreePath> getExpandedDescendants(TreePath parent)
返回一个Enumeration
路径的后裔parent
当前展开。 如果parent
当前没有扩大,这将返回null
。 如果在迭代返回的Enumeration
时展开/折叠节点,则可能不会返回所有扩展路径,也可能返回不再展开的路径。- 参数
-
parent
- 要检查的路径 - 结果
-
一个
Enumeration
的后裔parent
,或null
如果parent
目前没有扩大
-
hasBeenExpanded
public boolean hasBeenExpanded(TreePath path)
如果已经扩展了路径标识的节点,则返回true。- 参数
-
path
- 标识节点的TreePath
- 结果
-
如果
path
已经扩大,那么就是path
-
isExpanded
public boolean isExpanded(TreePath path)
如果路径标识的节点当前被展开,则返回true,- 参数
-
path
- 指定要检查的节点的TreePath
- 结果
- 如果节点路径中的任何节点被折叠,则为false,如果路径中的所有节点都被扩展,则为true
-
isExpanded
public boolean isExpanded(int row)
如果指定的显示行中的节点当前被展开,则返回true。- 参数
-
row
- 要检查的行,其中0是显示中的第一行 - 结果
- 如果节点当前被展开,则为true,否则为false
-
isCollapsed
public boolean isCollapsed(TreePath path)
如果path标识的值当前已折叠,则返回true,如果当前没有显示路径中的任何值,则返回false。- 参数
-
path
- 要查询的TreePath
- 结果
- 如果节点路径中的任何节点被折叠,则为true,如果路径中的所有节点都已展开,则为false
-
isCollapsed
public boolean isCollapsed(int row)
如果指定的显示行中的节点折叠,则返回true。- 参数
-
row
- 要检查的行,其中0是显示中的第一行 - 结果
- 如果节点当前已折叠,则为true,否则为false
-
makeVisible
public void makeVisible(TreePath path)
确保通过路径识别的节点当前是可见的。- 参数
-
path
-TreePath
使可见
-
isVisible
public boolean isVisible(TreePath path)
如果由path标识的值当前是可视的,则返回true,这意味着它是根或全部的父对象被展开。 否则,此方法返回false。- 参数
-
path
-TreePath
识别节点 - 结果
- 如果节点是可见的,则为true,否则为false
-
getPathBounds
public Rectangle getPathBounds(TreePath path)
返回指定节点将被绘制的Rectangle
。 如果路径中的任何组件被隐藏(在折叠的父项下),则返回null
。注意:
即使指定的节点当前未显示,此方法返回一个有效的矩形。- 参数
-
path
- 识别节点的TreePath
- 结果
-
Rectangle
节点被绘制,或null
-
getRowBounds
public Rectangle getRowBounds(int row)
返回指定行中的节点被绘制的Rectangle
。- 参数
-
row
- 要绘制的行,其中0是显示中的第一行 - 结果
-
该节点被绘制在
Rectangle
中
-
scrollPathToVisible
public void scrollPathToVisible(TreePath path)
确保路径中的所有路径组件都已扩展(除了最后一个路径组件)并滚动,以便显示由路径标识的节点。 只有当这个JTree
包含在一个JScrollPane
。- 参数
-
path
-TreePath
识别要查看的节点
-
scrollRowToVisible
public void scrollRowToVisible(int row)
滚动由行标识的项目,直到显示。 执行使行进入视图所需的最小滚动量。 只有当这个JTree
包含在一个JScrollPane
。- 参数
-
row
- 指定要滚动的行的整数,其中0是显示中的第一行
-
getPathForRow
@BeanProperty(bound=false) public TreePath getPathForRow(int row)
返回指定行的路径。 如果row
不可见,或者TreeUI
尚未设置,则返回null
。- 参数
-
row
- 指定行的整数 - 结果
-
所述
TreePath
到指定的节点,null
如果row < 0
或row >= getRowCount()
-
getRowForPath
public int getRowForPath(TreePath path)
返回显示由指定路径标识的节点的行。- 参数
-
path
- 识别节点的TreePath
- 结果
- 指定显示行的整数,其中0是显示中的第一行,如果路径中的任何元素隐藏在折叠父项下,则为-1。
-
expandPath
public void expandPath(TreePath path)
确保由指定路径标识的节点被扩展和可视。 如果路径中的最后一个项目是叶子,这将不起作用。- 参数
-
path
- 标识一个节点的TreePath
-
expandRow
public void expandRow(int row)
确保指定行中的节点被扩展和可见。如果
row
是<0或> =getRowCount
这将不起作用。- 参数
-
row
- 指定显示行的整数,其中0是显示中的第一行
-
collapsePath
public void collapsePath(TreePath path)
确保由指定路径标识的节点被折叠和可视。- 参数
-
path
- 识别节点的TreePath
-
collapseRow
public void collapseRow(int row)
确保指定行中的节点已折叠。如果
row
是<0或> =getRowCount
这将不起作用。- 参数
-
row
- 指定显示行的整数,其中0是显示中的第一行
-
getPathForLocation
public TreePath getPathForLocation(int x, int y)
返回指定位置节点的路径。- 参数
-
x
- 从显示区域的左边缘水平放置像素数的整数减去任何左边距 -
y
- 从显示区域顶部垂直排列的像素数减去任何顶部余量的整数 - 结果
-
该位置的节点为
TreePath
-
getRowForLocation
public int getRowForLocation(int x, int y)
返回指定位置的行。- 参数
-
x
- 从显示区域的左边缘水平的像素数减去任何左边距的整数 -
y
- 从显示区域顶部垂直排列的像素数减去任何顶边距的整数 - 结果
- 对应于该位置的行,如果位置不在显示的单元格的边界内,则为-1
- 另请参见:
-
getClosestRowForLocation(int, int)
-
getClosestPathForLocation
public TreePath getClosestPathForLocation(int x, int y)
返回最接近x,y的节点的路径。 如果当前没有可见的节点,或者没有模型,则返回null
,否则它总是返回一个有效的路径。 要测试节点是否完全在x,y,得到节点的边界,并测试x,y。- 参数
-
x
- 从显示区域的左边缘水平放置像素数的整数减去任何左边距 -
y
- 从显示区域顶部垂直排列的像素数减去任何上边距的整数 - 结果
-
TreePath
为最接近该位置的节点,null
如果没有可见或没有模型 - 另请参见:
-
getPathForLocation(int, int)
,getPathBounds(javax.swing.tree.TreePath)
-
getClosestRowForLocation
public int getClosestRowForLocation(int x, int y)
返回到最接近x,y的节点的行。 如果没有可见的节点或没有模型,返回-1。 否则,它总是返回一个有效的行。 要测试返回的对象是否完全在x,y处,返回的行获取节点的边界,并对其进行测试x,y。- 参数
-
x
- 从显示区域的左边缘水平放置像素数的整数,减去任何左边距 -
y
- 从显示区域顶部垂直排列的像素数减去任何顶部边距的整数 - 结果
- 最靠近该位置的行,-1如果没有可见或没有模型
- 另请参见:
-
getRowForLocation(int, int)
,getRowBounds(int)
-
isEditing
@BeanProperty(bound=false) public boolean isEditing()
如果正在编辑树,则返回true。 正在编辑的项目可以使用getSelectionPath
获得。- 结果
- 如果用户正在编辑节点,则为true
- 另请参见:
-
getSelectionPath()
-
stopEditing
public boolean stopEditing()
结束当前编辑会话。 (DefaultTreeCellEditor
对象保存当前在单元格中正在进行的编辑,其他实现可能会有不同的操作。)如果树未被编辑,则不起作用。Note:
To make edit-saves automatic whenever the user changes their position in the tree, usesetInvokesStopCellEditing(boolean)
.- 结果
- 如果编辑正在进行并且现在已停止,则为true,否则编辑未进行时为false
-
cancelEditing
public void cancelEditing()
取消当前编辑会话。 如果树未被编辑,则不起作用。
-
startEditingAtPath
public void startEditingAtPath(TreePath path)
选择由指定路径标识的节点,并启动编辑。 如果CellEditor
不允许编辑指定的项目,则编辑尝试失败。- 参数
-
path
- 标识一个节点的TreePath
-
getEditingPath
@BeanProperty(bound=false) public TreePath getEditingPath()
返回当前正在编辑的元素的路径。- 结果
-
正在编辑的节点的
TreePath
-
setSelectionModel
@BeanProperty(description="The tree\'s selection model.") public void setSelectionModel(TreeSelectionModel selectionModel)
设置树的选择模型。 当指定一个null
值时,使用空的selectionModel
,这不允许选择。这是一个绑定属性。
- 参数
-
selectionModel
- 要使用的TreeSelectionModel
,或null
禁用选择 - 另请参见:
-
TreeSelectionModel
-
getSelectionModel
public TreeSelectionModel getSelectionModel()
返回模型进行选择。 这应该总是返回一个非null
值。 如果您不想允许任何选项将选择模型设置为null
,这将强制使用空选择模型。- 结果
- 选择的模型
- 另请参见:
-
setSelectionModel(javax.swing.tree.TreeSelectionModel)
-
getPathBetweenRows
protected TreePath[] getPathBetweenRows(int index0, int index1)
返回指定行之间的路径(包括)。 如果指定的索引在可见的行集中,或绑定可见的行集合,则索引受可见的行集约束。 如果指定的索引不在可见的行集中,或者不绑定可见的行集合,则返回一个空数组。 例如,如果行数为10
,并且使用-1, 20
调用此方法,则指定的索引将被约束到可见的行集合,并将其视为使用0, 9
调用。 另一方面,如果这是使用-10, -1
调用的,则指定的索引不会绑定可见的行集合,并返回一个空数组。参数不依赖于顺序。 就是说,
getPathBetweenRows(x, y)
相当于getPathBetweenRows(y, x)
。如果行数为
0
,则返回一个空数组,或者指定的索引未绑定可见的行集合。- 参数
-
index0
- 范围内的第一个索引 -
index1
- 范围内的最后一个索引 - 结果
- 指定行索引之间的路径(包括)
-
setSelectionInterval
public void setSelectionInterval(int index0, int index1)
选择指定间隔的行(含)。 如果指定的索引位于可见的行集合内,或者绑定可见的行集合,则指定的行将被可见的行集合约束。 如果指定的索引不在可见的行集合内,或者不绑定可见的行集合,则清除选择。 例如,如果行数为10
,并且使用-1, 20
调用此方法,则指定的索引将限制可见范围,并将其视为使用0, 9
调用。 另一方面,如果这是使用-10, -1
调用的,那么指定的索引不会绑定可见的行集合,并且选择被清除。参数不依赖于顺序。 即
setSelectionInterval(x, y)
相当于setSelectionInterval(y, x)
。- 参数
-
index0
- 要选择的范围内的第一个索引 -
index1
- 要选择的范围中的最后一个索引
-
addSelectionInterval
public void addSelectionInterval(int index0, int index1)
将指定的行(包括)添加到选择。 如果指定的索引在可见的行集合内,或绑定可见的行集合,则指定的索引受可见的行集约束。 如果索引不在可见的行集合内,或者不绑定可见的行集合,则选择不会更改。 例如,如果行数为10
,并且使用-1, 20
调用此方法,则指定的索引将限制可见范围,并将其视为使用0, 9
调用。 另一方面,如果这是使用-10, -1
调用的,则指定的索引不会绑定可见的行集合,并且选择不变。参数不依赖于顺序。 即
addSelectionInterval(x, y)
相当于addSelectionInterval(y, x)
。- 参数
-
index0
- 要添加到选择范围的第一个索引 -
index1
- 添加到选择范围的最后一个索引
-
removeSelectionInterval
public void removeSelectionInterval(int index0, int index1)
从选择中删除指定的行(包括)。 如果指定的索引在可见的行集合内,或绑定可见的行集合,则指定的索引受可见的行集约束。 如果指定的索引不在可见的行集合内,或者不绑定可见的行集合,则选择不会更改。 例如,如果行计数为10
,并且使用-1, 20
调用此方法,则指定的范围限制可见范围,这被视为使用0, 9
调用。 另一方面,如果这是使用-10, -1
调用的,则指定的范围不会绑定可见的行集合,并且选择不变。参数不依赖于顺序。 即
removeSelectionInterval(x, y)
相当于removeSelectionInterval(y, x)
。- 参数
-
index0
- 从选择中删除的第一行 -
index1
- 从选择中删除的最后一行
-
removeSelectionPath
public void removeSelectionPath(TreePath path)
从当前选择中删除由指定路径标识的节点。- 参数
-
path
- 标识节点的TreePath
-
removeSelectionPaths
public void removeSelectionPaths(TreePath[] paths)
从当前选择中删除由指定路径标识的节点。- 参数
-
paths
- 一个TreePath
对象的数组,指定要删除的节点
-
removeSelectionRow
public void removeSelectionRow(int row)
从当前选择中删除索引号为row
的行。- 参数
-
row
- 要删除的行
-
removeSelectionRows
public void removeSelectionRows(int[] rows)
删除在每个指定行中选择的行。- 参数
-
rows
- 指定显示行的int数组,其中0是显示中的第一行
-
clearSelection
public void clearSelection()
清除选择。
-
isSelectionEmpty
@BeanProperty(bound=false) public boolean isSelectionEmpty()
如果选择当前为空,则返回true。- 结果
- 如果选择当前为空,则为true
-
addTreeExpansionListener
public void addTreeExpansionListener(TreeExpansionListener tel)
为TreeExpansion
事件添加一个侦听TreeExpansion
。- 参数
-
tel
- TreeExpansionListener,当树状结点展开或折叠时将被通知(“负扩展”)
-
removeTreeExpansionListener
public void removeTreeExpansionListener(TreeExpansionListener tel)
移除TreeExpansion
事件的侦听TreeExpansion
。- 参数
-
tel
- 要删除的TreeExpansionListener
-
getTreeExpansionListeners
@BeanProperty(bound=false) public TreeExpansionListener[] getTreeExpansionListeners()
返回使用addTreeExpansionListener()添加到此JTree的所有TreeExpansionListener
的数组。- 结果
-
所有添加的
TreeExpansionListener
或一个空数组,如果没有添加侦听器 - 从以下版本开始:
- 1.4
-
addTreeWillExpandListener
public void addTreeWillExpandListener(TreeWillExpandListener tel)
为TreeWillExpand
事件添加一个侦听TreeWillExpand
。- 参数
-
tel
- 一个TreeWillExpandListener
,当树节点被展开或折叠时将被通知(“负扩展”)
-
removeTreeWillExpandListener
public void removeTreeWillExpandListener(TreeWillExpandListener tel)
删除TreeWillExpand
事件的侦听TreeWillExpand
。- 参数
-
tel
- 要删除的TreeWillExpandListener
-
getTreeWillExpandListeners
@BeanProperty(bound=false) public TreeWillExpandListener[] getTreeWillExpandListeners()
返回使用addTreeWillExpandListener()添加到此JTree的所有TreeWillExpandListener
的数组。- 结果
-
所有添加的
TreeWillExpandListener
或一个空数组,如果没有添加侦听器 - 从以下版本开始:
- 1.4
-
fireTreeExpanded
public void fireTreeExpanded(TreePath path)
通知所有在此事件类型上通知有兴趣的听众。 事件实例使用path
参数懒惰地创建。- 参数
-
path
- 表示展开节点的TreePath
- 另请参见:
-
EventListenerList
-
fireTreeCollapsed
public void fireTreeCollapsed(TreePath path)
通知所有在此事件类型上通知有兴趣的听众。 事件实例使用path
参数懒惰地创建。- 参数
-
path
- 表示已折叠的节点的TreePath
- 另请参见:
-
EventListenerList
-
fireTreeWillExpand
public void fireTreeWillExpand(TreePath path) throws ExpandVetoException
通知所有在此事件类型上通知有兴趣的听众。 事件实例使用path
参数懒惰地创建。- 参数
-
path
- 表示展开节点的TreePath
- 异常
-
ExpandVetoException
- 如果防止膨胀发生 - 另请参见:
-
EventListenerList
-
fireTreeWillCollapse
public void fireTreeWillCollapse(TreePath path) throws ExpandVetoException
通知所有在此事件类型上通知有兴趣的听众。 事件实例使用path
参数懒惰地创建。- 参数
-
path
- 表示展开节点的TreePath
- 异常
-
ExpandVetoException
- 如果防止崩溃发生 - 另请参见:
-
EventListenerList
-
addTreeSelectionListener
public void addTreeSelectionListener(TreeSelectionListener tsl)
为TreeSelection
事件添加一个监听TreeSelection
。- 参数
-
tsl
- 当选择或取消选择节点时将通知的TreeSelectionListener
(“否定选择”)
-
removeTreeSelectionListener
public void removeTreeSelectionListener(TreeSelectionListener tsl)
删除一个TreeSelection
听众。- 参数
-
tsl
- 要删除的TreeSelectionListener
-
getTreeSelectionListeners
@BeanProperty(bound=false) public TreeSelectionListener[] getTreeSelectionListeners()
返回使用addTreeSelectionListener()添加到此JTree的所有TreeSelectionListener
的数组。- 结果
-
所有添加的
TreeSelectionListener
或一个空数组,如果没有添加侦听器 - 从以下版本开始:
- 1.4
-
fireValueChanged
protected void fireValueChanged(TreeSelectionEvent e)
通知所有在此事件类型上通知有兴趣的听众。- 参数
-
e
- 要发射的TreeSelectionEvent
; 当选择或取消选择节点时,由TreeSelectionModel
生成 - 另请参见:
-
EventListenerList
-
treeDidChange
public void treeDidChange()
当树已经发生变化时,我们需要调整边界大小,但还不够,我们需要删除扩展节点集(例如,节点被扩展或折叠,或节点被插入到树中)。 你不应该调用这个,UI会调用它,因为它需要。
-
setVisibleRowCount
@BeanProperty(description="The number of rows that are to be displayed.") public void setVisibleRowCount(int newCount)
设置要显示的行数。 这将仅在树包含在JScrollPane
中的情况下JScrollPane
,并且将调整该滚动页面的首选大小和大小。这是一个绑定属性。
- 参数
-
newCount
- 要显示的行数
-
getVisibleRowCount
public int getVisibleRowCount()
返回显示区域中显示的行数。- 结果
- 显示的行数
-
getNextMatch
public TreePath getNextMatch(String prefix, int startingRow, Position.Bias bias)
将TreePath返回到以前缀开头的下一个树元素。 要处理一个TreePath
转换成一个字符串,使用convertValueToText
。- 参数
-
prefix
- 测试匹配的字符串 -
startingRow
- 开始搜索的行 -
bias
- 搜索方向,即Position.Bias.Forward或Position.Bias.Backward。 - 结果
- 下一个树形元素的TreePath,以前缀开头; 否则为空
- 异常
-
IllegalArgumentException
- 如果前缀为空或startingRow超出范围 - 从以下版本开始:
- 1.4
-
getPreferredScrollableViewportSize
@BeanProperty(bound=false) public Dimension getPreferredScrollableViewportSize()
返回首选的显示大小为JTree
。 高度由getVisibleRowCount
确定,宽度为当前优选宽度。- Specified by:
-
getPreferredScrollableViewportSize
在接口Scrollable
- 结果
-
一个包含首选大小的
Dimension
对象 - 另请参见:
-
JComponent.getPreferredSize()
-
getScrollableUnitIncrement
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
返回滚动时增加的量。 数量是第一个显示行的高度,不是完全在视图中,或者如果它完全显示,滚动方向下一行的高度。- Specified by:
-
getScrollableUnitIncrement
在接口Scrollable
- 参数
-
visibleRect
- 在视口内可见的视图区域 -
orientation
-SwingConstants.VERTICAL
或SwingConstants.HORIZONTAL
-
direction
- 向上/向左滚动小于0,向下/向右大于零 - 结果
- 在指定方向滚动的“单位”增量
- 另请参见:
-
JScrollBar.setUnitIncrement(int)
-
getScrollableBlockIncrement
public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
返回块增量,这是高度或宽度的量visibleRect
,基于orientation
。- Specified by:
-
getScrollableBlockIncrement
在接口Scrollable
- 参数
-
visibleRect
- 在视口内可见的视图区域 -
orientation
-SwingConstants.VERTICAL
或SwingConstants.HORIZONTAL
-
direction
- 向上/向左滚动小于零,向下/向右大于零。 - 结果
- 在指定方向滚动的“块”增量
- 另请参见:
-
JScrollBar.setBlockIncrement(int)
-
getScrollableTracksViewportWidth
@BeanProperty(bound=false) public boolean getScrollableTracksViewportWidth()
返回false以指示视口的宽度不会确定表的宽度,除非树的首选宽度小于视口宽度。 换句话说:确保树不会小于其视口。- Specified by:
-
getScrollableTracksViewportWidth
在接口Scrollable
- 结果
- 树是否应跟踪视口的宽度
- 另请参见:
-
Scrollable.getScrollableTracksViewportWidth()
-
getScrollableTracksViewportHeight
@BeanProperty(bound=false) public boolean getScrollableTracksViewportHeight()
返回false以指示视口的高度不会确定表的高度,除非树的首选高度小于视口高度。 换句话说:确保树不会小于其视口。- Specified by:
-
getScrollableTracksViewportHeight
在接口Scrollable
- 结果
- 树是否应跟踪视口的高度
- 另请参见:
-
Scrollable.getScrollableTracksViewportHeight()
-
setExpandedState
protected void setExpandedState(TreePath path, boolean state)
设置这个JTree
的扩展状态。 如果state
是真的,所有的家长path
和路径被标记为展开。 如果state
为假,则所有path
父母均标记为EXPANDED,但path
本身标记为折叠。如果一个
TreeWillExpandListener
话,这将失败。- 参数
-
path
- 标识节点的TreePath
-
state
- 如果是true
,@ {code path}和路径的所有父母都标记为已展开。 否则,所有path
父母都标记为EXPANDED,但是path
本身被标记为折叠。
-
getDescendantToggledPaths
protected Enumeration<TreePath> getDescendantToggledPaths(TreePath parent)
返回一个Enumeration
的TreePaths
已展开是后裔parent
。- 参数
-
parent
- 一条路径 - 结果
-
Enumeration
的TreePaths
-
removeDescendantToggledPaths
protected void removeDescendantToggledPaths(Enumeration<TreePath> toRemove)
删除已扩展的TreePaths
中的toRemove
任何后代。- 参数
-
toRemove
- 要删除的路径的枚举; 值null
被忽略 - 异常
-
ClassCastException
- 如果toRemove
包含不是TreePath
的元素;null
值被忽略
-
clearToggledPaths
protected void clearToggledPaths()
清除切换树路径的缓存。 这不发送任何TreeExpansionListener
事件。
-
createTreeModelListener
protected TreeModelListener createTreeModelListener()
- 结果
-
实例为
TreeModelHandler
-
removeDescendantSelectedPaths
protected boolean removeDescendantSelectedPaths(TreePath path, boolean includePath)
删除选择中任何作为后代的路径为path
。 如果includePath
为真,并选择了path
,则将从选择中删除。- 参数
-
path
- 一条路径 -
includePath
- 是true
和path
被选中,它将从选择中删除。 - 结果
- 如果选择了后代,则为真
- 从以下版本开始:
- 1.3
-
paramString
protected String paramString()
返回此JTree
的字符串表示JTree
。 该方法仅用于调试目的,并且返回的字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null
。- 重写:
-
paramString
在JComponent
- 结果
-
这个
JTree
的字符串表示JTree
。
-
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
获取与此JTree关联的AccessibleContext。 对于JTrees,AccessibleContext采用AccessibleJTree的形式。 如有必要,将创建一个新的AccessibleJTree实例。- Specified by:
-
getAccessibleContext
在接口Accessible
- 重写:
-
getAccessibleContext
在Component
- 结果
- 一个AccessibleJTree,作为这个JTree的AccessibleContext
-
-