当前位置 类层次(JDK) 所有类(JDK) 所有域和方法(JDK)

类 java.awt.ScrollPane

java.lang.Object
   |
   +----java.awt.Component
           |
           +----java.awt.Container
                   |
                   +----java.awt.ScrollPane

public class ScrollPane
extends Container

一个容器类,为单子组件实现自动的水平和/或垂直滚动条。滚动条的显示方式可设置为:

  1. 需要时显示:当需要时由滚动面板创建并显示
  2. 总显示:由滚动面板创建并总被显示
  3. 不显示:滚动面板既不创建也不显示滚动条

水平和垂直滚动条状态由两个实现 Adjustable 接口的对象表示。 API 提供一些方法,用于访问那些对象,诸如 Adjustable 对象的属性(例如单位增量,值等)。

相对于滚动面板的几何特性,可对某些可调整的属性(最小值,最大值,块增量和可视部分)进行交互式设置,面板的子组件及以上这些属性不应由程序代码使用滚动面板设置。

如果滚动条的显示方式定义为 "never", 那么仍可使用 setScrollPosition() 方法编程实现滚动此滚动面板,正确的移动和剪切它的子组件。如果程序不需创建和管理它自己的可调整控件,那么使用该策略。

滚动条的放置由用户在程序外设定的特定于平台的属性来控制。

该容器的初始尺寸设置为 100x100, 能使用 setSize() 方法重新设置。

滚动条使用的任一空间和滚动面板创建的任一边界可使用嵌入属性。使用 getInsets() 方法获取嵌入的当前值。如果 scrollbarsAlwaysVisible 的值为 false, 那么不管滚动条当前是否可见,嵌入值将动态变化。


变量索引

SCROLLBARS_ALWAYS
不管滚动面板和它的子组件的尺寸大小,指定水平/垂直的滚动条总应显示。
SCROLLBARS_AS_NEEDED
指示仅当滚动面板中的子组件在水平/垂直方向上超过此面板的尺寸时,才显示水平/垂直滚动条。
SCROLLBARS_NEVER
不管滚动面板和它的子组件的尺寸大小,指定永不显示水平/垂直的滚动条。

构造子索引

ScrollPane()
创建一个新的滚动面板容器,显示方式为 "needed"。
ScrollPane(int)
创建一个新的滚动面板容器。

方法索引

addImpl(Component, Object, int)
将特定的组件添加到当前滚动面板容器。
addNotify()
创建该滚动面板的同级件。
doLayout()
通过将当前容器的子组件设置为最优尺寸来调整它的布局。
getHAdjustable()
返回可调整的对象,表示水平滚动条的状态。
getHScrollbarHeight()
返回一个水平滚动条占据的高度,不管它当前是否处于显示状态。
getScrollbarDisplayPolicy()
返回滚动条的显示方式。
getScrollPosition()
返回滚动面板视窗中 0,0 位置显示的子组件内的当前 x,y 位置。
getVAdjustable()
返回可调整的对象,表示垂直滚动条的状态。
getViewportSize()
返回滚动面板视窗的当前尺寸。
getVScrollbarWidth()
返回一个水平滚动条占据的宽度,不管它当前是否处于显示状态。
layout()
不推荐使用该方法。
paramString()
返回表示当前容器状态的参数串。
printComponents(Graphics)
打印当前滚动窗口中的组件。
setLayout(LayoutManager)
设置当前容器的布局管理器。
setScrollPosition(int, int)
滚动到子组件内的指定位置。
setScrollPosition(Point)
滚动到子组件内的指定位置。

变量

SCROLLBARS_AS_NEEDED
 public static final int SCROLLBARS_AS_NEEDED
指示仅当滚动面板中的子组件在水平/垂直方向上超过此面板的尺寸时,才显示水平/垂直滚动条。

SCROLLBARS_ALWAYS
 public static final int SCROLLBARS_ALWAYS
不管滚动面板和它的子组件的尺寸大小,指定水平/垂直的滚动条总应显示。

SCROLLBARS_NEVER
 public static final int SCROLLBARS_NEVER
不管滚动面板和它的子组件的尺寸大小,指定永不显示水平/垂直的滚动条。


构造子

ScrollPane
 public ScrollPane()
创建一个新的滚动面板容器,显示方式为 "needed"。

ScrollPane
 public ScrollPane(int scrollbarDisplayPolicy)
创建一个新的滚动面板容器。

参数:
scrollbarDisplayPolicy - 滚动条的显示方式

方法

addImpl
 protected final void addImpl(Component comp,
                              Object constraints,
                                      int index)
将特定的组件添加到当前滚动面板容器。 如果滚动面板中已存在一个子组件,那么删除此组件并添加指定组件。

参数:
comp - 要添加的组件
constraints - 不使用
index - 子组件的位置(必 <= 0)
覆盖:
addImplContainer 中的
getScrollbarDisplayPolicy
 public int getScrollbarDisplayPolicy()
返回滚动条的显示方式。

返回值:
滚动条的显示方式
getViewportSize
 public Dimension getViewportSize()
返回滚动面板视窗的当前尺寸。

返回值:
视窗的象素尺寸
getHScrollbarHeight
 public int getHScrollbarHeight()
返回一个水平滚动条占据的高度,不管它当前是否处于显示状态。

返回值:
水平滚动条的象素高度
getVScrollbarWidth
 public int getVScrollbarWidth()
返回一个水平滚动条占据的宽度,不管它当前是否处于显示状态。

返回值:
垂直滚动条的象素宽度
getVAdjustable
 public Adjustable getVAdjustable()
返回可调整的对象,表示垂直滚动条的状态。 如果滚动条的显示方式为 "never", 此方法返回 null。

getHAdjustable
 public Adjustable getHAdjustable()
返回可调整的对象,表示水平滚动条的状态。 如果滚动条的显示方式为 "never", 此方法返回 null。

setScrollPosition
 public void setScrollPosition(int x,
                       int y)
滚动到子组件内的指定位置。 如果滚动面板包含一个子组件,调用此方法才合法。对于超出子组件合法滚动边界的位置,将滚动到与之最接近的合法位置。合法边界由如下矩形定义: x = 0, y = 0, 宽 = (子组件宽度 - 视窗宽度), 高 = (子组件高度 - 视窗高度)。这是一个同表示滚动条状态对象接口的简洁方法。

参数:
x - 滚动到的 x 位置
y - 滚动到的 y 位置
抛出: IllegalArgumentException
如果指定坐标不在此组件的合法滚动边界内。
setScrollPosition
 public void setScrollPosition(Point p)
滚动到子组件内的指定位置。 如果滚动面板包含一个子组件,且滚动位置在此组件的合法滚动边界内,则调用此方法合法。 合法边界由如下矩形定义: x = 0, y = 0, 宽 = (子组件宽度 - 视窗宽度), 高 = (子组件高度 - 视窗高度)。 这是一个同表示滚动条状态对象接口的简洁方法。

参数:
p - 滚动到的点位置
抛出: IllegalArgumentException
如果指定坐标不在此组件的合法滚动边界内。
getScrollPosition
 public Point getScrollPosition()
返回滚动面板视窗中 0,0 位置显示的子组件内的当前 x,y 位置。 这是一个同表示滚动条状态可调整对象的接口的简洁方法。

返回值:
当前滚动位置的坐标位置
setLayout
 public final void setLayout(LayoutManager mgr)
设置当前容器的布局管理器。 覆盖此方法,阻止设置布局的 mgr 参数。

参数:
mgr - 指定的布局管理器
覆盖:
Container 中的 setLayout
doLayout
 public void doLayout()
通过将当前容器的子组件设置为最优尺寸来调整它的布局。 如果此尺寸使当前滚动位置非法,那么将滚动位置设置为它的最邻近的合法位置。

覆盖:
Container 中的 doLayout
参见:
validate
layout
 public void layout()
注释:不推荐使用 layout() 方法。 同 JDK 1.1 版,用 doLayout() 方法替换。

覆盖:
Container 中的 layout
printComponents
 public void printComponents(Graphics g)
打印当前滚动窗口中的组件。

参数:
g - 指定的图形窗口
覆盖:
Container 中的 printComponents
参见:
print, printAll
addNotify
 public void addNotify()
创建该滚动面板的同级件。

覆盖:
Container 中的 addNotify
paramString
 public String paramString()
返回表示当前容器状态的参数串。

覆盖:
Container 中的 paramString

当前位置 类层次(JDK) 所有类(JDK) 所有域和方法(JDK)