所有类


java.awt
类 ScrollPane

java.lang.Object
  继承者 java.awt.Component
      继承者 java.awt.Container
          继承者 java.awt.ScrollPane
所有已实现的接口:
ImageObserver, MenuContainer, Serializable, Accessible

public class ScrollPane
   
   
   
   
   
extends Container
implements Accessible

实现用于单个子组件的自动水平和/或垂直滚动的容器类。滚动条的显示策略可以设置如下:

  1. as needed: 创建滚动条,且只在滚动窗格需要时显示
  2. always: 创建滚动条,且滚动窗格总是显示滚动条
  3. never: 滚动窗格永远不创建或显示滚动条

水平和垂直滚动条的状态由两个实现 Adjustable 接口的 ScrollPaneAdjustable 对象描述(每个对象对应各自的尺寸)。API 提供了访问这些对象的方法,以便能够对 Adjustable 对象的属性(如 unitIncrement 和 value 等)进行操作。

某些可调整属性(minimum、maximum、blockIncrement 和 visibleAmount)是由滚动窗格根据自身的几何形状及其子组件在内部进行设置的,不应由使用滚动窗格的程序设置。

如果滚动条显示策略被定义为 "never",那么滚动窗格可以使用 setScrollPosition() 方法按程序滚动,并且滚动窗格将适当移动和裁剪子组件的内容。如果程序需要创建和管理自己的可调整控件,那么这个策略很有用。

滚动条的放置由程序之外的用户通过特定于平台的属性集控制。

此容器的初始大小被设置为 100x100,可以使用 setSize() 重新设置它。

默认情况下,使用配有滚轮的鼠标上的滚轮进行滚动。可以使用 setWheelScrollingEnabled 禁用此功能。通过设置水平和垂直 Adjustable 的块增量和单位增量,可以自定义滚轮滚动。有关如何指派鼠标滚轮事件的信息,请参阅 MouseWheelEvent 的类描述。

Insets 用于定义滚动条使用的所有空间和滚动窗格创建的所有边框,可以使用 getInsets() 获取当前 insets 的值。如果 scrollbarsAlwaysVisible 值为 false,则 insets 的值将根据滚动条当前是否可见而发生更改。

另请参见:
序列化表格

嵌套类摘要
protected  class ScrollPane.AccessibleAWTScrollPane
          此类实现 ScrollPane 类的可访问性支持。
 
从类 java.awt.Container 继承的嵌套类/接口
Container.AccessibleAWTContainer
 
从类 java.awt.Component 继承的嵌套类/接口
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
字段摘要
static int SCROLLBARS_ALWAYS
          指定无论滚动窗格和子组件各自大小如何,总是显示水平/垂直滚动条。
static int SCROLLBARS_AS_NEEDED
          指定只在子组件的大小超过了滚动窗格水平/垂直尺寸时显示水平/垂直滚动条。
static int SCROLLBARS_NEVER
          指定无论滚动窗格和子组件各自大小如何,永不显示水平/垂直滚动条。
 
从类 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
 
构造方法摘要
ScrollPane()
          创建一个具有滚动条策略 "as needed" 的新滚动窗格容器。
ScrollPane(int scrollbarDisplayPolicy)
          创建新的滚动窗格容器。
 
方法摘要
protected  void addImpl(Component comp, Object constraints, int index)
          将指定的组件添加到此滚动窗格容器。
 void addNotify()
          创建滚动窗格的同位体。
 void doLayout()
          通过将子组件的大小调整为其首选大小来布置此容器。
protected  boolean eventTypeEnabled(int type)
          如果启用滚轮滚动,则对 MouseWheelEvents 返回 true
 AccessibleContext getAccessibleContext()
          获取与此 ScrollPane 相关的 AccessibleContext。
 Adjustable getHAdjustable()
          返回表示水平滚动条状态的 ScrollPaneAdjustable 对象。
 int getHScrollbarHeight()
          返回水平滚动条占用的高度,它与当前是否由滚动窗格显示无关。
 int getScrollbarDisplayPolicy()
          返回滚动条的显示策略。
 Point getScrollPosition()
          返回子组件中的当前 x,y 位置,子组件显示在滚动窗格视口的 0,0 位置。
 Adjustable getVAdjustable()
          返回表示垂直滚动条状态的 ScrollPaneAdjustable 对象。
 Dimension getViewportSize()
          返回滚动条窗格视口的当前大小。
 int getVScrollbarWidth()
          返回垂直滚动条占用的宽度,它与当前是否由滚动窗格显示无关。
 boolean isWheelScrollingEnabled()
          指示是否进行滚动来响应鼠标滚轮。
 void layout()
          已过时。 从 JDK version 1.1 开始,由 doLayout() 取代。
 String paramString()
          返回表示此 ScrollPane 的状态的字符串。
 void printComponents(Graphics g)
          显示此滚动窗格中的组件。
protected  void processMouseWheelEvent(MouseWheelEvent e)
          处理通过滚动适当量而传递给此 ScrollPane 的鼠标滚轮事件。
 void setLayout(LayoutManager mgr)
          设置此容器的布局管理器。
 void setScrollPosition(int x, int y)
          滚动到子组件中的指定位置。
 void setScrollPosition(Point p)
          滚动到子组件中的指定位置。
 void setWheelScrollingEnabled(boolean handleWheel)
          启用/禁用对鼠标滚轮滚动的移动响应。
 
从类 java.awt.Container 继承的方法
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, update, 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, 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, getPeer, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

字段详细信息

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()
           throws HeadlessException
创建一个具有滚动条策略 "as needed" 的新滚动窗格容器。

抛出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
GraphicsEnvironment.isHeadless()

ScrollPane

public ScrollPane(int scrollbarDisplayPolicy)
           throws HeadlessException
创建新的滚动窗格容器。

参数:
scrollbarDisplayPolicy - 显示滚动条时使用的策略
抛出:
IllegalArgumentException - 如果指定的滚动条显示策略无效
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
GraphicsEnvironment.isHeadless()
方法详细信息

addImpl

protected final void addImpl(Component comp,
                             Object constraints,
                             int index)
将指定的组件添加到此滚动窗格容器。如果滚动窗格有一个现有子组件,则移除该组件,并添加新的组件。

覆盖:
Container 中的 addImpl
参数:
comp - 要添加的组件
constraints - 不适用
index - 子组件的位置(必须 <= 0)
另请参见:
Container.add(Component), Container.add(Component, int), Container.add(Component, java.lang.Object), LayoutManager, LayoutManager2

getScrollbarDisplayPolicy

public int getScrollbarDisplayPolicy()
返回滚动条的显示策略。

返回:
滚动条的显示策略

getViewportSize

public Dimension getViewportSize()
返回滚动条窗格视口的当前大小。

返回:
滚动条视口的大小,以像素为单位

getHScrollbarHeight

public int getHScrollbarHeight()
返回水平滚动条占用的高度,它与当前是否由滚动窗格显示无关。

返回:
水平滚动条的高度,以像素为单位

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部