java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLabel
javax.swing.table.DefaultTableCellRenderer
- 所有已实现的接口:
ImageObserver,MenuContainer,Serializable,Accessible,SwingConstants,TableCellRenderer
用于在
JTable 中呈现(显示)单个单元格的标准类。
Implementation Note:这个类继承自标准组件类JLabel。然而,JTable 采用了一种独特的机制来渲染其单元格,因此需要对其单元格渲染器进行一些稍微修改的行为。表格类定义了一个单元格渲染器,并将其用作渲染表格中所有单元格的橡皮图章;它渲染第一个单元格,更改该单元格渲染器的内容,将原点移动到新位置,重新绘制它,等等。标准 JLabel 组件并非设计为以这种方式使用,我们希望避免在每次绘制单元格时触发 revalidate。这会大大降低性能,因为 revalidate 消息将向上传递到容器的层次结构以确定是否有任何其他组件会受到影响。由于渲染器仅在绘画操作的生命周期内为父级,因此我们同样希望避免与遍历绘画操作的层次结构相关的开销。因此,此类将 validate、invalidate、revalidate、repaint 和 firePropertyChange 方法重写为空操作,并重写 isOpaque 方法只是为了提高性能。如果您编写自己的渲染器,请牢记这一性能考虑因素。
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
- 参见:
-
内部类总结
内部类修饰符和类型类描述static class实现UIResource的DefaultTableCellRenderer的子类。在类 javax.swing.JLabel 中声明的嵌套类/接口
JLabel.AccessibleJLabel在类 javax.swing.JComponent 中声明的嵌套类/接口
JComponent.AccessibleJComponent在类 java.awt.Container 中声明的嵌套类/接口
Container.AccessibleAWTContainer -
字段摘要
字段在类 javax.swing.JComponent 中声明的字段
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW在类 java.awt.Component 中声明的字段
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT在接口 java.awt.image.ImageObserver 中声明的字段
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH在接口 javax.swing.SwingConstants 中声明的字段
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述voidfirePropertyChange(String propertyName, boolean oldValue, boolean newValue) 出于性能原因被重写。protected voidfirePropertyChange(String propertyName, Object oldValue, Object newValue) 出于性能原因被重写。getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) 返回默认的表格单元格渲染器。void出于性能原因被重写。booleanisOpaque()出于性能原因被重写。voidrepaint()出于性能原因被重写。voidrepaint(long tm, int x, int y, int width, int height) 出于性能原因被重写。void出于性能原因被重写。void出于性能原因被重写。void覆盖JComponent.setBackground以将未选择的背景颜色分配给指定的颜色。void覆盖JComponent.setForeground以将未选择的前景色分配给指定的颜色。protected void将正在渲染的单元格的String对象设置为value。voidupdateUI()来自UIManager的通知,外观 [L&F] 已更改。voidvalidate()出于性能原因被重写。在类 javax.swing.JLabel 中声明的方法
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在类 javax.swing.JComponent 中声明的方法
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, 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, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update在类 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, 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在类 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, 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, 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
-
字段详细信息
-
noFocusBorder
没有焦点的边框。
-
-
构造方法详细信息
-
DefaultTableCellRenderer
public DefaultTableCellRenderer()创建默认的表格单元格渲染器。
-
-
方法详情
-
setForeground
覆盖JComponent.setForeground以将未选择的前景色分配给指定的颜色。- 重写:
setForeground在类JComponent中- 参数:
c- 将前景色设置为此值- 参见:
-
setBackground
覆盖JComponent.setBackground以将未选择的背景颜色分配给指定的颜色。- 重写:
setBackground在类JComponent中- 参数:
c- 将背景颜色设置为此值- 参见:
-
updateUI
public void updateUI()来自UIManager的通知,外观 [L&F] 已更改。用UIManager的最新版本替换当前 UI 对象。 -
getTableCellRendererComponent
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) 返回默认的表格单元格渲染器。在打印操作期间,将使用
false的isSelected和hasFocus值调用此方法,以防止选择和焦点出现在打印输出中。要根据是否正在打印表进行其他自定义,请检查JComponent.isPaintingForPrint()的返回值。- 指定者:
getTableCellRendererComponent在接口TableCellRenderer中- 参数:
table-JTablevalue- 分配给位于[row, column]的单元格的值isSelected- 如果单元格被选中则为真hasFocus- 如果单元格有焦点则为真row- 要呈现的单元格的行column- 要呈现的单元格的列- 返回:
- 默认的表格单元格渲染器
- 参见:
-
isOpaque
public boolean isOpaque()出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
isOpaque在类JComponent中- 返回:
- 如果此组件完全不透明,则为真
- 参见:
-
invalidate
public void invalidate()出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
invalidate在类Container中- 自从:
- 1.5
- 参见:
-
validate
public void validate()出于性能原因被覆盖。有关详细信息,请参阅 实施说明。 -
revalidate
public void revalidate()出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
revalidate在类JComponent中- 参见:
-
repaint
public void repaint(long tm, int x, int y, int width, int height) 出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
repaint在类JComponent中- 参数:
tm- 此参数未使用x- 脏区的x值y- 脏区的y值width- 脏区的宽度height- 脏区的高度- 参见:
-
repaint
出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
repaint在类JComponent中- 参数:
r- 包含脏区的Rectangle- 参见:
-
repaint
public void repaint()出于性能原因被覆盖。有关详细信息,请参阅 实施说明。 -
firePropertyChange
出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
firePropertyChange在类Component中- 参数:
propertyName- 值已更改的属性oldValue- 属性的先前值newValue- 属性的新值
-
firePropertyChange
出于性能原因被覆盖。有关详细信息,请参阅 实施说明。- 重写:
firePropertyChange在类JComponent中- 参数:
propertyName- 值已更改的属性oldValue- 属性的先前值newValue- 属性的新值
-
setValue
将正在渲染的单元格的String对象设置为value。- 参数:
value- 此单元格的字符串值;如果值为null,则将文本值设置为空字符串- 参见:
-