Класс ScrollPane
- Все реализованные интерфейсы:
ImageObserver, MenuContainer, Serializable, Accessible
public class ScrollPane extends Container implements Accessible
- по необходимости: полосы прокрутки создаются и отображаются только тогда, когда они нужны прокручиваемой области
- всегда: полосы прокрутки создаются и всегда отображаются прокручиваемой областью
- никогда: полосы прокрутки никогда не создаются и не отображаются прокручиваемой областью
Состояние горизонтальной и вертикальной полос прокрутки представлено двумя объектами ScrollPaneAdjustable (по одному для каждого измерения), реализующими интерфейс Adjustable. API предоставляет методы доступа к этим объектам, позволяющие управлять атрибутами объекта Adjustable (например, unitIncrement, value и т. д.).
Некоторые настраиваемые свойства (minimum, maximum, blockIncrement и visibleAmount) устанавливаются прокручиваемой областью внутри класса в соответствии с ее геометрией и геометрией ее дочернего компонента; программы, использующие прокручиваемую область, не должны задавать эти свойства.
Если политика отображения полос прокрутки задана как «никогда», прокручиваемую область все равно можно прокручивать программно с помощью метода setScrollPosition(), и она будет перемещать и соответствующим образом обрезать содержимое дочернего компонента. Эта политика полезна, если программе необходимо создавать собственные элементы управления и управлять ими.
Размещение полос прокрутки определяется специфичными для платформы свойствами, задаваемыми пользователем вне программы.
Начальный размер этого контейнера — 100x100, но его можно изменить с помощью setSize().
Прокрутка колесиком мыши, оснащенной колесиком, включена по умолчанию. Ее можно отключить с помощью setWheelScrollingEnabled. Прокрутку колесиком можно настроить, задав приращения блока и единицы для горизонтального и вертикального объектов Adjustable. Сведения о передаче событий колесика мыши см. в описании класса MouseWheelEvent.
Для определения пространства, занимаемого полосами прокрутки и границами, создаваемыми прокручиваемой областью, используются внутренние отступы. Метод getInsets() позволяет получить их текущие значения. Если scrollbarsAlwaysVisible имеет значение false, значения внутренних отступов будут динамически изменяться в зависимости от того, отображаются ли в данный момент полосы прокрутки.
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
ScrollPane.AccessibleAWTScrollPane |
Этот класс реализует поддержку специальных возможностей для класса ScrollPane. |
Вложенные классы/интерфейсы, объявленные в классе Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
SCROLLBARS_ALWAYS |
Указывает, что горизонтальные/вертикальные полосы прокрутки должны отображаться всегда, независимо от соотношения размеров прокручиваемой области и дочернего компонента. |
static final int |
SCROLLBARS_AS_NEEDED |
Указывает, что горизонтальная/вертикальная полоса прокрутки должна отображаться только в том случае, если размер дочернего компонента превышает размер прокручиваемой области по горизонтали/вертикали. |
static final int |
SCROLLBARS_NEVER |
Указывает, что горизонтальные/вертикальные полосы прокрутки никогда не должны отображаться, независимо от соотношения размеров прокручиваемой области и дочернего компонента. |
Поля, объявленные в классе Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Поля, объявленные в интерфейсе ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ScrollPane() |
Создает новый контейнер прокручиваемой области с политикой отображения полос прокрутки «по необходимости». |
ScrollPane |
Создает новый контейнер прокручиваемой области. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected final void |
addImpl |
Добавляет указанный компонент в этот контейнер прокручиваемой области. |
void |
addNotify() |
Создает peer-объект прокручиваемой области. |
void |
doLayout() |
Выполняет компоновку этого контейнера, изменяя размер его дочернего компонента до предпочтительного размера. |
protected boolean |
eventTypeEnabled |
Если прокрутка колесиком включена, возвращает true для событий MouseWheelEvents |
AccessibleContext |
getAccessibleContext() |
Получает AccessibleContext, связанный с этим ScrollPane. |
Adjustable |
getHAdjustable() |
Возвращает объект ScrollPaneAdjustable, представляющий состояние горизонтальной полосы прокрутки. |
int |
getHScrollbarHeight() |
Возвращает высоту, которую занимала бы горизонтальная полоса прокрутки независимо от того, отображается ли она в данный момент прокручиваемой областью. |
int |
getScrollbarDisplayPolicy() |
Возвращает политику отображения полос прокрутки. |
Point |
getScrollPosition() |
Возвращает текущие координаты x,y в дочернем компоненте, отображаемые в точке 0,0 области просмотра прокручиваемой панели. |
Adjustable |
getVAdjustable() |
Возвращает объект ScrollPaneAdjustable, представляющий состояние вертикальной полосы прокрутки. |
Dimension |
getViewportSize() |
Возвращает текущий размер области просмотра прокручиваемой панели. |
int |
getVScrollbarWidth() |
Возвращает ширину, которую занимала бы вертикальная полоса прокрутки независимо от того, отображается ли она в данный момент прокручиваемой областью. |
boolean |
isWheelScrollingEnabled() |
Указывает, будет ли выполняться прокрутка в ответ на вращение колесика мыши. |
void |
layout() |
Устарело. |
String |
paramString() |
Возвращает строку, представляющую состояние этого ScrollPane. |
void |
printComponents |
Печатает компонент в этой прокручиваемой области. |
protected void |
processMouseWheelEvent |
Обрабатывает события колесика мыши, переданные этому ScrollPane, прокручивая содержимое на соответствующее расстояние. |
final void |
setLayout |
Задает менеджер компоновки для этого контейнера. |
void |
setScrollPosition |
Прокручивает содержимое до указанной позиции в дочернем компоненте. |
void |
setScrollPosition |
Прокручивает содержимое до указанной позиции в дочернем компоненте. |
void |
setWheelScrollingEnabled |
Включает или отключает прокрутку в ответ на вращение колесика мыши. |
Методы, объявленные в классе 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, isValidateRoot, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, update, validate, validateTree
Методы, объявленные в классе 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, 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
Подробное описание полей
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
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - См. также:
ScrollPane
@ConstructorProperties("scrollbarDisplayPolicy") public ScrollPane(int scrollbarDisplayPolicy) throws HeadlessException - Параметры:
-
scrollbarDisplayPolicy— политика отображения полос прокрутки - Исключения:
-
IllegalArgumentException— если указана недопустимая политика отображения полос прокрутки -
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - См. также:
Подробное описание методов
addImpl
protected final void addImpl(Component comp, Object constraints, int index)
getScrollbarDisplayPolicy
public int getScrollbarDisplayPolicy()
- Возвращает:
- политику отображения полос прокрутки
getViewportSize
public Dimension getViewportSize()
- Возвращает:
- размер области просмотра в пикселях
getHScrollbarHeight
public int getHScrollbarHeight()
- Возвращает:
- высоту горизонтальной полосы прокрутки в пикселях
getVScrollbarWidth
public int getVScrollbarWidth()
- Возвращает:
- ширину вертикальной полосы прокрутки в пикселях
getVAdjustable
public Adjustable getVAdjustable()
ScrollPaneAdjustable, представляющий состояние вертикальной полосы прокрутки. Объявленный тип возвращаемого значения этого метода — Adjustable; он сохранен для обратной совместимости.- Возвращает:
- состояние вертикальной полосы прокрутки
- См. также:
getHAdjustable
public Adjustable getHAdjustable()
ScrollPaneAdjustable, представляющий состояние горизонтальной полосы прокрутки. Объявленный тип возвращаемого значения этого метода — Adjustable; он сохранен для обратной совместимости.- Возвращает:
- состояние горизонтальной полосы прокрутки
- См. также:
setScrollPosition
public void setScrollPosition(int x, int y)
- Параметры:
-
x— координата x, до которой нужно прокрутить -
y— координата y, до которой нужно прокрутить - Исключения:
-
NullPointerException— если прокручиваемая область не содержит дочернего компонента
setScrollPosition
public void setScrollPosition(Point p)
- Параметры:
-
p— объект Point, представляющий позицию, до которой нужно прокрутить - Исключения:
-
NullPointerException— еслиpимеет значениеnull
getScrollPosition
public Point getScrollPosition()
- Возвращает:
- координаты текущей позиции прокрутки
- Исключения:
-
NullPointerException— если прокручиваемая область не содержит дочернего компонента
setLayout
doLayout
public void doLayout()
layout
printComponents
public void printComponents(Graphics g)
- Переопределяет:
-
printComponentsв классеContainer - Параметры:
-
g— указанное окно Graphics - См. также:
addNotify
paramString
public String paramString()
ScrollPane. Этот метод предназначен только для отладки; содержимое и формат возвращаемой строки могут различаться в разных реализациях. Возвращаемая строка может быть пустой, но не может быть null.- Переопределяет:
-
paramStringв классеContainer - Возвращает:
- строку параметров этой прокручиваемой области
processMouseWheelEvent
protected void processMouseWheelEvent(MouseWheelEvent e)
ScrollPane, прокручивая содержимое на соответствующее расстояние. Обратите внимание: если параметр события равен null, поведение не определено и может привести к исключению.
- Переопределяет:
-
processMouseWheelEventв классеComponent - Параметры:
-
e— событие колесика мыши - Начиная с:
- 1.4
- См. также:
eventTypeEnabled
protected boolean eventTypeEnabled(int type)
- Начиная с:
- 1.4
setWheelScrollingEnabled
public void setWheelScrollingEnabled(boolean handleWheel)
- Параметры:
-
handleWheel—true, если прокрутка должна автоматически выполняться при событии MouseWheelEvent,falseв противном случае. - Начиная с:
- 1.4
- См. также:
isWheelScrollingEnabled
public boolean isWheelScrollingEnabled()
- Возвращает:
-
true, если прокрутка колесиком включена; иначеfalse - Начиная с:
- 1.4
- См. также:
getAccessibleContext
public AccessibleContext getAccessibleContext()
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеComponent - Возвращает:
- AccessibleAWTScrollPane, который служит AccessibleContext этого ScrollPane
- Начиная с:
- 1.3
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/ScrollPane.html
doLayout().