public class DefaultTreeCellRenderer extends JLabel implements TreeCellRenderer
DefaultTreeCellRenderer
不是不透明的,除非你的子类油漆你不应该改变这个。
见How to Use Trees在Java教程定制使用这个类节点显示的示例。
DefaultTreeCellRenderer使用的图标和颜色DefaultTreeCellRenderer
可以使用各种setter方法进行配置。 每个属性的值从默认值表初始化。 当调用外观和感觉更改( updateUI
)时,任何属性值为UIResource
都将从默认表中刷新。 下表列出了DefaultTreeCellRenderer
属性和默认值表之间的映射关系:
Implementation Note:该类覆盖invalidate
, validate
, revalidate
, repaint
和firePropertyChange
只是为了提高性能。 如果不被覆盖,这些经常被称为的方法将执行默认树单元格渲染器不必要的代码路径。 如果您编写自己的渲染器,请注意重写这些方法的优点和缺点。
警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,对所有JavaBeans的长期存储的支持已经添加到java.beans
包中。 请参阅XMLEncoder
。
JLabel.AccessibleJLabel
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Modifier and Type | Field and Description |
---|---|
protected Color |
backgroundNonSelectionColor
未选择节点时用于背景的颜色。
|
protected Color |
backgroundSelectionColor
选择节点时用于背景的颜色。
|
protected Color |
borderSelectionColor
当节点具有焦点时,用于聚焦指示符的颜色。
|
protected Icon |
closedIcon
用于显示未展开的非叶节点的图标。
|
protected boolean |
hasFocus
如果有焦点的话。
|
protected Icon |
leafIcon
用于显示叶节点的图标。
|
protected Icon |
openIcon
用于显示展开的非叶节点的图标。
|
protected boolean |
selected
是当前值。
|
protected Color |
textNonSelectionColor
用于未选择节点前景的颜色。
|
protected Color |
textSelectionColor
用于所选节点前景的颜色。
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
DefaultTreeCellRenderer()
创建一个
DefaultTreeCellRenderer 。
|
Modifier and Type | Method and Description |
---|---|
void |
firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, byte oldValue, byte newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, char oldValue, char newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, double oldValue, double newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, float oldValue, float newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, int oldValue, int newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, long oldValue, long newValue)
由于性能原因而被覆盖。
|
protected void |
firePropertyChange(String propertyName, Object oldValue, Object newValue)
由于性能原因而被覆盖。
|
void |
firePropertyChange(String propertyName, short oldValue, short newValue)
由于性能原因而被覆盖。
|
Color |
getBackgroundNonSelectionColor()
返回要用于非选定节点的背景颜色。
|
Color |
getBackgroundSelectionColor()
如果选择节点,则返回用于背景的颜色。
|
Color |
getBorderSelectionColor()
返回绘制边框的颜色。
|
Icon |
getClosedIcon()
返回用于表示未展开的非叶节点的图标。
|
Icon |
getDefaultClosedIcon()
返回用于表示未展开的非叶节点的当前laf的默认图标。
|
Icon |
getDefaultLeafIcon()
返回用于表示叶节点的当前laf的默认图标。
|
Icon |
getDefaultOpenIcon()
返回用于表示展开的非叶节点的当前laf的默认图标。
|
Font |
getFont()
获取此组件的字体。
|
Icon |
getLeafIcon()
返回用于表示叶节点的图标。
|
Icon |
getOpenIcon()
返回用于表示展开的非叶节点的图标。
|
Dimension |
getPreferredSize()
覆盖
JComponent.getPreferredSize 以返回略宽的首选大小值。
|
Color |
getTextNonSelectionColor()
返回当未选择节点时绘制文本的颜色。
|
Color |
getTextSelectionColor()
返回在选择节点时绘制文本的颜色。
|
Component |
getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus)
根据传入的组件配置渲染器。
|
void |
invalidate()
由于性能原因而被覆盖。
|
void |
paint(Graphics g)
绘制价值。
|
void |
repaint()
由于性能原因而被覆盖。
|
void |
repaint(long tm, int x, int y, int width, int height)
由于性能原因而被覆盖。
|
void |
repaint(Rectangle r)
由于性能原因而被覆盖。
|
void |
revalidate()
由于性能原因而被覆盖。
|
void |
setBackground(Color color)
子类映射为
ColorUIResource s为null。
|
void |
setBackgroundNonSelectionColor(Color newColor)
设置要用于非选定节点的背景颜色。
|
void |
setBackgroundSelectionColor(Color newColor)
如果选择了节点,则设置用于背景的颜色。
|
void |
setBorderSelectionColor(Color newColor)
设置要用于边框的颜色。
|
void |
setClosedIcon(Icon newIcon)
设置用于表示未展开的非叶节点的图标。
|
void |
setFont(Font font)
子类映射为
FontUIResource s为null。
|
void |
setLeafIcon(Icon newIcon)
设置用于表示叶节点的图标。
|
void |
setOpenIcon(Icon newIcon)
设置用于表示展开的非叶节点的图标。
|
void |
setTextNonSelectionColor(Color newColor)
当没有选择节点时,设置文本绘制的颜色。
|
void |
setTextSelectionColor(Color newColor)
设置当选择节点时绘制文本的颜色。
|
void |
updateUI()
将UI属性重置为当前外观的值。
|
void |
validate()
由于性能原因而被覆盖。
|
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
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, 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, validateTree
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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected boolean selected
protected boolean hasFocus
protected transient Icon closedIcon
protected transient Icon leafIcon
protected transient Icon openIcon
protected Color textSelectionColor
protected Color textNonSelectionColor
protected Color backgroundSelectionColor
protected Color backgroundNonSelectionColor
protected Color borderSelectionColor
public DefaultTreeCellRenderer()
DefaultTreeCellRenderer
。
图标和文字颜色由UIManager UIManager
。
public void updateUI()
updateUI
在
JLabel
JComponent.updateUI()
public Icon getDefaultOpenIcon()
public Icon getDefaultClosedIcon()
public Icon getDefaultLeafIcon()
public void setOpenIcon(Icon newIcon)
public Icon getOpenIcon()
public void setClosedIcon(Icon newIcon)
public Icon getClosedIcon()
public void setLeafIcon(Icon newIcon)
public Icon getLeafIcon()
public void setTextSelectionColor(Color newColor)
public Color getTextSelectionColor()
public void setTextNonSelectionColor(Color newColor)
public Color getTextNonSelectionColor()
public void setBackgroundSelectionColor(Color newColor)
public Color getBackgroundSelectionColor()
public void setBackgroundNonSelectionColor(Color newColor)
public Color getBackgroundNonSelectionColor()
public void setBorderSelectionColor(Color newColor)
public Color getBorderSelectionColor()
public void setFont(Font font)
FontUIResource
s为null。
如果font
为null,或者是FontUIResource
,则这样可以让JTree的字体显示出来。
另一方面,如果font
是非空,而不是FontUIResource
,则字体变成font
。
setFont
在
JComponent
类
font
- 该
Font
所需的Font
Component.getFont()
public Font getFont()
getFont
在界面
MenuContainer
getFont
在
Component
类
Component.setFont(java.awt.Font)
public void setBackground(Color color)
ColorUIResource
s为null。
如果color
为null,或者是ColorUIResource
,则具有让JTree的背景颜色显示的效果。
另一方面,如果color
是非空的,而不是一个ColorUIResource
,背景变成color
。
setBackground
在
JComponent
color
- 所需背景
Color
Component.getBackground()
,
JComponent.setOpaque(boolean)
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus)
convertValueToText
,其最终调用toString
上value
。
前景颜色是根据选择设置的,图标是根据leaf
和expanded
参数设置的。
getTreeCellRendererComponent
在接口
TreeCellRenderer
Component
public void paint(Graphics g)
public Dimension getPreferredSize()
JComponent.getPreferredSize
以返回略宽的首选大小值。
getPreferredSize
在
JComponent
preferredSize
属性
JComponent.setPreferredSize(java.awt.Dimension)
, ComponentUI
public void validate()
public void invalidate()
invalidate
在
Container
Container.validate()
, Container.layout()
, LayoutManager2
public void revalidate()
public void repaint(long tm, int x, int y, int width, int height)
repaint
在
JComponent
tm
- 不使用此参数
x
- 脏区域的x值
y
- 脏区域的y值
width
- 脏区域的宽度
height
- 脏区域的高度
JComponent.isPaintingOrigin()
,
Component.isShowing()
,
RepaintManager.addDirtyRegion(javax.swing.JComponent, int, int, int, int)
public void repaint(Rectangle r)
repaint
在
JComponent
r
- 一个
Rectangle
脏区域的
Rectangle
JComponent.isPaintingOrigin()
,
Component.isShowing()
,
RepaintManager.addDirtyRegion(javax.swing.JComponent, int, int, int, int)
public void repaint()
repaint
在
Component
Component.update(Graphics)
protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
firePropertyChange
在
Component
propertyName
- 其值已更改的属性
oldValue
- 该物业的以前的价格
newValue
- 该物业的新价值
public void firePropertyChange(String propertyName, byte oldValue, byte newValue)
firePropertyChange
在
Component
propertyName
- 已更改的属性的编程名称
oldValue
- 属性的旧值(以字节为单位)
newValue
- 属性的新值(作为一个字节)
Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
public void firePropertyChange(String propertyName, char oldValue, char newValue)
firePropertyChange
在
JComponent
propertyName
- 已更改的属性的编程名称
oldValue
- 属性的旧值(作为char)
newValue
- 属性的新值(作为char)
Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
public void firePropertyChange(String propertyName, short oldValue, short newValue)
firePropertyChange
在
Component
propertyName
- 已更改的属性的编程名称
oldValue
- 物业的旧价值(作为短期)
newValue
- 物业的旧价值(作为一个简短的)
Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
public void firePropertyChange(String propertyName, int oldValue, int newValue)
firePropertyChange
在
JComponent
propertyName
- 其值已更改的属性
oldValue
- 该物业的以前的价值
newValue
- 物业的新价值
public void firePropertyChange(String propertyName, long oldValue, long newValue)
firePropertyChange
在
Component
propertyName
- 已更改的属性的编程名称
oldValue
- 物业的旧价值(一样长)
newValue
- 物业的新价值(长期)
Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
public void firePropertyChange(String propertyName, float oldValue, float newValue)
firePropertyChange
在
Component
propertyName
- 已更改的属性的编程名称
oldValue
- 属性的旧值(作为浮点数)
newValue
- 属性的新值(作为浮点数)
Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
public void firePropertyChange(String propertyName, double oldValue, double newValue)
firePropertyChange
在类
Component
propertyName
- 已更改的属性的编程名称
oldValue
- 该物业的旧值(双重)
newValue
- 属性的新值(双重)
Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
firePropertyChange
在
JComponent
类
propertyName
- 其值已更改的属性
oldValue
- 该物业的以前的价值
newValue
- 该物业的新价值