Module java.desktop

Class BasicScrollPaneUI

所有已实现的接口:
ScrollPaneConstants
直接已知的子类:
MetalScrollPaneUI, SynthScrollPaneUI

public class BasicScrollPaneUI extends ScrollPaneUI implements ScrollPaneConstants
滚动面板UI的默认L&F实现。
  • Field Details

    • scrollpane

      protected JScrollPane scrollpane
      JScrollPane的实例。
    • vsbChangeListener

      protected ChangeListener vsbChangeListener
      安装在垂直滚动条上的ChangeListener
    • hsbChangeListener

      protected ChangeListener hsbChangeListener
      安装在水平滚动条上的ChangeListener
    • viewportChangeListener

      protected ChangeListener viewportChangeListener
      安装在视口上的ChangeListener
    • spPropertyChangeListener

      protected PropertyChangeListener spPropertyChangeListener
      安装在滚动面板上的PropertyChangeListener
  • Constructor Details

    • BasicScrollPaneUI

      public BasicScrollPaneUI()
      构造一个BasicScrollPaneUI
  • Method Details

    • createUI

      public static ComponentUI createUI(JComponent x)
      返回一个新的BasicScrollPaneUI的实例。
      参数:
      x - 一个组件。
      返回:
      BasicScrollPaneUI的新实例。
    • getMaximumSize

      public Dimension getMaximumSize(JComponent c)
      从类中复制的描述: ComponentUI
      返回适合外观和感觉的指定组件的最大大小。如果返回null,则最大大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。此方法的默认实现调用getPreferredSize并返回该值。
      覆盖:
      getMaximumSize 在类 ComponentUI
      参数:
      c - 正在查询其最大大小的组件;此参数通常被忽略,但如果UI对象是无状态的并且由多个组件共享,则可能会使用该参数
      返回:
      新的Dimension(Short.MAX_VALUE, Short.MAX_VALUE)
      参见:
    • installDefaults

      protected void installDefaults(JScrollPane scrollpane)
      安装默认属性。
      参数:
      scrollpane - JScrollPane的一个实例
    • installListeners

      protected void installListeners(JScrollPane c)
      注册监听器。
      参数:
      c - JScrollPane的一个实例
    • installKeyboardActions

      protected void installKeyboardActions(JScrollPane c)
      注册键盘操作。
      参数:
      c - JScrollPane的一个实例
    • uninstallDefaults

      protected void uninstallDefaults(JScrollPane c)
      卸载默认属性。
      参数:
      c - JScrollPane的一个实例
    • uninstallListeners

      protected void uninstallListeners(JComponent c)
      注销监听器。
      参数:
      c - 一个组件
    • uninstallKeyboardActions

      protected void uninstallKeyboardActions(JScrollPane c)
      注销键盘操作。
      参数:
      c - JScrollPane的一个实例
    • syncScrollPaneWithViewport

      protected void syncScrollPaneWithViewport()
      JScrollPaneViewport同步。
    • getBaseline

      public int getBaseline(JComponent c, int width, int height)
      返回基线。
      覆盖:
      getBaseline 在类 ComponentUI
      参数:
      c - 请求基线的JComponent
      width - 获取基线的宽度
      height - 获取基线的高度
      返回:
      基线或值< 0,表示没有合理的基线
      抛出:
      NullPointerException - 如果cnull
      IllegalArgumentException - 如果宽度或高度< 0
      自从:
      1.6
      参见:
    • getBaselineResizeBehavior

      public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
      返回一个枚举,指示组件的基线随大小变化而变化的方式。
      覆盖:
      getBaselineResizeBehavior 在类 ComponentUI
      参数:
      c - 要返回基线调整行为的JComponent
      返回:
      一个枚举,指示基线随组件大小变化而变化的方式
      抛出:
      NullPointerException - 如果cnull
      自从:
      1.6
      参见:
    • createViewportChangeListener

      protected ChangeListener createViewportChangeListener()
      返回一个视口ChangeListener的实例。
      返回:
      一个视口ChangeListener的实例
    • createHSBChangeListener

      protected ChangeListener createHSBChangeListener()
      返回一个水平滚动条ChangeListener的实例。
      返回:
      一个水平滚动条ChangeListener的实例
    • createVSBChangeListener

      protected ChangeListener createVSBChangeListener()
      返回一个垂直滚动条ChangeListener的实例。
      返回:
      一个垂直滚动条ChangeListener的实例
    • createMouseWheelListener

      protected MouseWheelListener createMouseWheelListener()
      创建一个MouseWheelListener的实例,该实例通过installUI()添加到JScrollPane中。返回的MouseWheelListener用于处理鼠标滚轮驱动的滚动。
      返回:
      实现滚轮驱动滚动的MouseWheelListener
      自从:
      1.4
      参见:
    • updateScrollBarDisplayPolicy

      protected void updateScrollBarDisplayPolicy(PropertyChangeEvent e)
      更新滚动条显示策略。
      参数:
      e - 属性更改事件
    • updateViewport

      protected void updateViewport(PropertyChangeEvent e)
      更新视口。
      参数:
      e - 属性更改事件
    • updateRowHeader

      protected void updateRowHeader(PropertyChangeEvent e)
      更新行标题。
      参数:
      e - 属性更改事件
    • updateColumnHeader

      protected void updateColumnHeader(PropertyChangeEvent e)
      更新列标题。
      参数:
      e - 属性更改事件
    • createPropertyChangeListener

      protected PropertyChangeListener createPropertyChangeListener()
      创建一个PropertyChangeListener的实例,该实例通过installUI()添加到JScrollPane中。子类可以重写此方法以返回自定义的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")) {
                      // 当视口发生变化时执行一些额外的工作
                  }
                  super.propertyChange(e);
              }
          }
       }
       
      返回:
      一个PropertyChangeListener的实例
      参见: