java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.CellRendererPane
- 所有已实现的接口:
ImageObserver,MenuContainer,Serializable,Accessible
此类插入在单元格渲染器和使用它们的组件之间。它的存在只是为了阻止 repaint() 和 invalidate() 方法,否则这些方法会在配置渲染器时向上传播树。它由 JTable、JTree 和 JList 的实现使用。例如,以下是在 JList 中绘制每一行的代码中如何使用 CellRendererPane:
cellRendererPane = new CellRendererPane(); ... Component rendererComponent = renderer.getListCellRendererComponent(); renderer.configureListCellRenderer(dataModel.getElementAt(row), row); cellRendererPane.paintComponent(g, rendererComponent, this, x, y, w, h);
渲染器组件必须重写 isShowing() 并无条件返回 true 才能正常工作,因为 Swing 绘制对 isShowing false 的组件不执行任何操作。
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
- 自从:
- 1.2
-
内部类总结
内部类修饰符和类型类描述protected class此类实现了对CellRendererPane类的辅助功能支持。在类 java.awt.Container 中声明的嵌套类/接口
Container.AccessibleAWTContainer -
字段摘要
字段在类 java.awt.Component 中声明的字段
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT在接口 java.awt.image.ImageObserver 中声明的字段
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述protected void如果指定的组件已经是它的子组件,那么我们什么都不用做——堆叠顺序对单元格渲染器组件无关紧要(CellRendererPane 无论如何都不绘制)。获取与此 CellRendererPane 关联的 AccessibleContext。void重写以避免在配置单元格渲染器子项时向上传播无效树。void不应该被调用。voidpaintComponent(Graphics g, Component c, Container p, int x, int y, int w, int h) 调用 this.paintComponent(g, c, p, x, y, w, h, false)。voidpaintComponent(Graphics g, Component c, Container p, int x, int y, int w, int h, boolean shouldValidate) 在图形对象 g 上绘制单元格渲染器组件 c。voidpaintComponent(Graphics g, Component c, Container p, Rectangle r) 调用 this.paintComponent(g, c, p, rx, ry, r.width, r.height) 其中r是输入Rectangle参数。void不应该被调用。在类 java.awt.Container 中声明的方法
add, add, add, add, add, addContainerListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, isValidateRoot, layout, list, list, locate, minimumSize, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, validate, validateTree在类 java.awt.Component 中声明的方法
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
字段详细信息
-
accessibleContext
AccessibleContext与此关联CellRendererPan
-
-
构造方法详细信息
-
CellRendererPane
public CellRendererPane()构造一个 CellRendererPane 对象。
-
-
方法详情
-
invalidate
public void invalidate()重写以避免在配置单元格渲染器子项时向上传播无效树。- 重写:
invalidate在类Container中- 参见:
-
paint
不应该被调用。 -
update
不应该被调用。 -
addImpl
如果指定的组件已经是它的子组件,那么我们什么都不用做——堆叠顺序对单元格渲染器组件无关紧要(CellRendererPane 无论如何都不绘制)。 -
paintComponent
public void paintComponent(Graphics g, Component c, Container p, int x, int y, int w, int h, boolean shouldValidate) 在图形对象 g 上绘制单元格渲染器组件 c。在绘制组件之前,它被重新设置为 this(如果有必要),它的边界被设置为 w,h 并且图形对象被(有效地)转换为 x,y。如果它是 JComponent,则双缓冲会暂时关闭。绘制组件后,它的边界将重置为 -w、-h、0、0,这样,如果它是最后一个绘制的渲染器组件,它就不会开始消耗输入。 Container p 是我们实际绘制的组件,通常它等于 this.getParent()。如果 shouldValidate 为真,组件 c 将在绘制之前进行验证。- 参数:
g- 要绘制的Graphics对象c-Component绘制p- 实际绘制的Container组件x- 指定绘制区域左侧的 int,以像素为单位,从图形上下文的左边缘开始测量y- 一个 int,指定要绘制的区域的顶部,以从图形上下文的顶部边缘向下测量的像素为单位w- 指定绘制区域宽度的整数,以像素为单位h- 指定绘制区域高度的整数,以像素为单位shouldValidate- 如果为真,组件c将在绘制之前进行验证
-
paintComponent
调用 this.paintComponent(g, c, p, x, y, w, h, false)。- 参数:
g- 要绘制的Graphics对象c-Component绘制p- 实际绘制的Container组件x- 指定绘制区域左侧的 int,以像素为单位,从图形上下文的左边缘开始测量y- 一个 int,指定要绘制的区域的顶部,以从图形上下文的顶部边缘向下测量的像素为单位w- 指定绘制区域宽度的整数,以像素为单位h- 指定绘制区域高度的整数,以像素为单位
-
paintComponent
调用 this.paintComponent(g, c, p, rx, ry, r.width, r.height) 其中r是输入Rectangle参数。- 参数:
g- 要绘制的Graphics对象c-Component绘制p- 实际绘制的Container组件r- 要绘制的Rectangle
-
getAccessibleContext
获取与此 CellRendererPane 关联的 AccessibleContext。对于 CellRendererPanes,AccessibleContext采用 AccessibleCellRendererPane 的形式。如有必要,将创建一个新的 AccessibleCellRendererPane 实例。- 指定者:
getAccessibleContext在接口Accessible中- 重写:
getAccessibleContext在类Component中- 返回:
- 作为此 CellRendererPane 的 AccessibleContext 的 AccessibleCellRendererPane
-