JavaTM 2 Platform
Standard Ed. 5.0

javax.swing.plaf.basic
类 BasicScrollPaneUI

java.lang.Object
  继承者 javax.swing.plaf.ComponentUI
      继承者 javax.swing.plaf.ScrollPaneUI
          继承者 javax.swing.plaf.basic.BasicScrollPaneUI
所有已实现的接口:
ScrollPaneConstants
直接已知子类:
MetalScrollPaneUI

public class BasicScrollPaneUI
extends ScrollPaneUI
implements ScrollPaneConstants

ScrollPaneUI 的默认 L&F 实现。


嵌套类摘要
 class BasicScrollPaneUI.HSBChangeListener
          水平滚动条侦听器。
protected  class BasicScrollPaneUI.MouseWheelHandler
          MouseWheelHandler 是实现 MouseWheelListener 接口的内部类。
 class BasicScrollPaneUI.PropertyChangeHandler
           
 class BasicScrollPaneUI.ViewportChangeHandler
          视口事件的侦听器。
 class BasicScrollPaneUI.VSBChangeListener
          垂直滚动条侦听器。
 
字段摘要
protected  ChangeListener hsbChangeListener
           
protected  JScrollPane scrollpane
           
protected  PropertyChangeListener spPropertyChangeListener
           
protected  ChangeListener viewportChangeListener
           
protected  ChangeListener vsbChangeListener
           
 
从接口 javax.swing.ScrollPaneConstants 继承的字段
COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
 
构造方法摘要
BasicScrollPaneUI()
           
 
方法摘要
protected  ChangeListener createHSBChangeListener()
           
protected  MouseWheelListener createMouseWheelListener()
          创建一个 MouseWheelListener 的实例,该实例由 installUI() 添加到 JScrollPane。
protected  PropertyChangeListener createPropertyChangeListener()
          创建由 installUI() 添加到 JScrollPane 的 PropertyChangeListener 的实例。
static ComponentUI createUI(JComponent x)
           
protected  ChangeListener createViewportChangeListener()
           
protected  ChangeListener createVSBChangeListener()
           
 Dimension getMaximumSize(JComponent c)
          返回指定组件的适合外观的最大大小。
protected  void installDefaults(JScrollPane scrollpane)
           
protected  void installKeyboardActions(JScrollPane c)
           
protected  void installListeners(JScrollPane c)
           
 void installUI(JComponent x)
          配置指定组件,使其适合外观。
 void paint(Graphics g, JComponent c)
          绘制指定组件,使其适合外观。
protected  void syncScrollPaneWithViewport()
           
protected  void uninstallDefaults(JScrollPane c)
           
protected  void uninstallKeyboardActions(JScrollPane c)
           
protected  void uninstallListeners(JComponent c)
           
 void uninstallUI(JComponent c)
          在 installUI 期间,在指定组件上反向执行的配置操作。
protected  void updateColumnHeader(PropertyChangeEvent e)
           
protected  void updateRowHeader(PropertyChangeEvent e)
           
protected  void updateScrollBarDisplayPolicy(PropertyChangeEvent e)
           
protected  void updateViewport(PropertyChangeEvent e)
           
 
从类 javax.swing.plaf.ComponentUI 继承的方法
contains, getAccessibleChild, getAccessibleChildrenCount, getMinimumSize, getPreferredSize, update
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

scrollpane

protected JScrollPane scrollpane

vsbChangeListener

protected ChangeListener vsbChangeListener

hsbChangeListener

protected ChangeListener hsbChangeListener

viewportChangeListener

protected ChangeListener viewportChangeListener

spPropertyChangeListener

protected PropertyChangeListener spPropertyChangeListener
构造方法详细信息

BasicScrollPaneUI

public BasicScrollPaneUI()
方法详细信息

createUI

public static ComponentUI createUI(JComponent x)

paint

public void paint(Graphics g,
                  JComponent c)
从类 ComponentUI 复制的描述
绘制指定组件,使其适合外观。在将要绘制指定组件时,从 ComponentUI.update 方法中调用此方法。子类应该重写此方法并使用指定 Graphics 对象来呈现组件的内容。

覆盖:
ComponentUI 中的 paint
参数:
g - 将在其中进行绘制的 Graphics 上下文
c - 将绘制的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数
另请参见:
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)

getMaximumSize

public Dimension getMaximumSize(JComponent c)
从类 ComponentUI 复制的描述
返回指定组件的适合外观的最大大小。如果返回 null,则最大大小将由组件的布局管理器计算(对于安装了特定布局管理器的组件而言,这是首选方法)。此方法的默认实现调用 getPreferredSize 并返回该值。

覆盖:
ComponentUI 中的 getMaximumSize
参数:
c - 将查询其最大大小的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数
返回:
新 Dimension(Short.MAX_VALUE, Short.MAX_VALUE)
另请参见:
JComponent.getMaximumSize(), LayoutManager2.maximumLayoutSize(java.awt.Container)

installDefaults

protected void installDefaults(JScrollPane scrollpane)

installListeners

protected void installListeners(JScrollPane c)

installKeyboardActions

protected void installKeyboardActions(JScrollPane c)

installUI

public void installUI(JComponent x)
从类 ComponentUI 复制的描述
配置指定组件,使其适合外观。当 ComponentUI 实例将作为 UI 委托安装在指定组件上时,可调用此方法。此方法应该为外观完整地配置组件,包括以下方面:
  1. 在组件上安装用于颜色、字体、边框、图标、不透明性等方面的所有默认属性值。只要有可能,就 应该重写由客户端程序初始化的属性值。
  2. 如有必要,可在组件上安装一个 LayoutManager
  3. 将所需的所有子组件创建/添加到组件中。
  4. 在组件上创建/安装事件侦听器。
  5. 为了检测和适当响应组件属性更改,可在组件上创建/安装一个 PropertyChangeListener
  6. 在组件上安装键盘 UI(助记符、遍历等等)。
  7. 初始化任何适当的实例数据。

覆盖:
ComponentUI 中的 installUI
参数:
x - 将安装此 UI 委托的组件
另请参见:
ComponentUI.uninstallUI(javax.swing.JComponent), JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

uninstallDefaults

protected void uninstallDefaults(JScrollPane c)

uninstallListeners

protected void uninstallListeners(JComponent c)

uninstallKeyboardActions

protected void uninstallKeyboardActions(JScrollPane c)

uninstallUI

public void uninstallUI(JComponent c)
从类 ComponentUI 复制的描述
installUI 期间,在指定组件上反向执行的配置操作。当此 UIComponent 实例将作为 UI 委托从指定组件上移除时,可调用此方法。此方法应该取消在 installUI 中执行的配置操作,非常小心地使 JComponent 实例处于某种洁净状态(没有额外的侦听器、没有特定于外观的属性对象等等)。配置内容应该包括以下方面:
  1. 从组件中移除所有 UI 设置的边框。
  2. 从组件上移除所有 UI 设置的布局管理器。
  3. 从组件中移除所有 UI 添加的子组件。
  4. 从组件中移除所有 UI 添加的事件/属性侦听器。
  5. 从组件中移除所有 UI 安装的键盘 UI。
  6. 使所有已分配的实例数据对象无效,从而允许进行 GC 操作。

覆盖:
ComponentUI 中的 uninstallUI
参数:
c - 从中移除此 UI 委托的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数
另请参见:
ComponentUI.installUI(javax.swing.JComponent), JComponent.updateUI()

syncScrollPaneWithViewport

protected void syncScrollPaneWithViewport()

createViewportChangeListener

protected ChangeListener createViewportChangeListener()

createHSBChangeListener

protected ChangeListener createHSBChangeListener()

createVSBChangeListener

protected ChangeListener createVSBChangeListener()

createMouseWheelListener

protected MouseWheelListener createMouseWheelListener()
创建一个 MouseWheelListener 的实例,该实例由 installUI() 添加到 JScrollPane。返回的 MouseWheelListener 用于处理鼠标滚轮驱动的滚动。

返回:
实现鼠标滚轮驱动滚动的 MouseWheelListener
从以下版本开始:
1.4
另请参见:
installUI(javax.swing.JComponent), BasicScrollPaneUI.MouseWheelHandler

updateScrollBarDisplayPolicy

protected void updateScrollBarDisplayPolicy(PropertyChangeEvent e)

updateViewport

protected void updateViewport(PropertyChangeEvent e)

updateRowHeader

protected void updateRowHeader(PropertyChangeEvent e)

updateColumnHeader

protected void updateColumnHeader(PropertyChangeEvent e)

createPropertyChangeListener

protected PropertyChangeListener createPropertyChangeListener()
创建由 installUI() 添加到 JScrollPane 的 PropertyChangeListener 的实例。子类可以重写此方法以返回自定义 PropertyChangeListener,例如
 class MyScrollPaneUI extends BasicScrollPaneUI {
    protected PropertyChangeListener createPropertyChangeListener() {
        return new MyPropertyChangeListener();
    }
    public class MyPropertyChangeListener extends PropertyChangeListener {
        public void propertyChange(PropertyChangeEvent e) {
            if (e.getPropertyName().equals("viewport")) {
                // do some extra work when the viewport changes
            }
            super.propertyChange(e);
        }
    }
 }
 

另请参见:
PropertyChangeListener, installUI(javax.swing.JComponent)

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策