Spec-Zone.ru › OpenJDK 21

Класс 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. по мере необходимости: полосы прокрутки создаются и отображаются только при необходимости виджетом
  2. всегда: полосы прокрутки создаются и всегда отображаются виджетом
  3. никогда: полосы прокрутки никогда не создаются или отображаются виджетом

Состояние горизонтальной и вертикальной полос прокрутки представлено двумя объектами ScrollPaneAdjustable (по одному для каждой размерности), которые реализуют интерфейс Adjustable. API предоставляет методы для доступа к этим объектам, чтобы можно было манипулировать атрибутами объекта Adjustable (например, unitIncrement, value и т. д.).

Некоторые свойства Adjustable (minimum, maximum, blockIncrement и visibleAmount) устанавливаются внутри ScrollPane в соответствии с геометрией ScrollPane и его дочернего элемента, и их не следует устанавливать программами, использующими ScrollPane.

Если политика отображения полос прокрутки определена как "никогда", то ScrollPane всё ещё можно программно прокручивать с помощью метода setScrollPosition(), и ScrollPane будет перемещать и обрезать содержимое дочернего элемента соответствующим образом. Эта политика полезна, если программе нужно создать и управлять собственными элементами управления Adjustable.

Размещение полос прокрутки контролируется платформа-специфическими свойствами, установленными пользователем вне программы.

Начальный размер этого контейнера составляет 100x100, но его можно изменить с помощью setSize().

Прокрутка колёсиком мыши с колесиком включена по умолчанию. Это можно отключить, используя setWheelScrollingEnabled. Прокрутка колёсиком может быть настроена путём установки значения block и unit increment горизонтальных и вертикальных Adjustable. Для получения информации о том, как обрабатываются события колёсика мыши, см. описание класса MouseWheelEvent.

Поля отступа используются для определения любого пространства, используемого полосами прокрутки и любыми рамками, созданными элементом ScrollPane. getInsets() можно использовать для получения текущего значения полей отступа. Если значение scrollbarsAlwaysVisible равно false, то значение полей отступа будет динамически изменяться в зависимости от того, видны ли полосы прокрутки в данный момент или нет.

См. также:
  • Сериализованная форма

Краткое описание вложенных классов

Модификатор и тип Класс Описание
protected class  ScrollPane.AccessibleAWTScrollPane
Этот класс реализует поддержку доступности для класса ScrollPane.

Вложенные классы/интерфейсы, объявленные в классе java.awt.Container

Container.AccessibleAWTContainer

Вложенные классы/интерфейсы, объявленные в классе java.awt.Component

Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy

Краткое описание полей

Модификатор и тип Поле Описание
static final int SCROLLBARS_ALWAYS
Указывает, что горизонтальные/вертикальные полосы прокрутки должны всегда отображаться независимо от соответствующих размеров ScrollPane и дочернего элемента.
static final int SCROLLBARS_AS_NEEDED
Указывает, что горизонтальная/вертикальная полоса прокрутки должна отображаться только тогда, когда размер дочернего элемента превышает размер ScrollPane в горизонтальном/вертикальном измерении.
static final int SCROLLBARS_NEVER
Указывает, что горизонтальные/вертикальные полосы прокрутки никогда не должны отображаться независимо от соответствующих размеров ScrollPane и дочернего элемента.

Поля, объявленные в классе java.awt.Component

accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

Поля, объявленные в интерфейсе java.awt.image.ImageObserver

ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH

Краткое описание конструкторов

Конструктор Описание
ScrollPane()
Создаёт новый контейнер ScrollPane с политикой отображения полос прокрутки "по мере необходимости".
ScrollPane(int scrollbarDisplayPolicy)
Создаёт новый контейнер ScrollPane.

Краткое описание методов

Модификатор и тип Метод Описание
protected final void addImpl(Component comp, Object constraints, int index)
Добавляет указанный компонент в этот контейнер ScrollPane.
void addNotify()
Создаёт виджет ScrollPane.
void doLayout()
Выполняет расчёт размера этого контейнера, изменяя размер его дочернего элемента до его предпочтительных размеров.
protected boolean eventTypeEnabled(int type)
Если прокрутка колёсиком включена, то возвращает true для MouseWheelEvents
AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим ScrollPane.
Adjustable getHAdjustable()
Возвращает объект ScrollPaneAdjustable, представляющий состояние горизонтальной полосы прокрутки.
int getHScrollbarHeight()
Возвращает высоту, которая будет занимать горизонтальная полоса прокрутки, независимо от того, отображается ли она в данный момент виджетом или нет.
int getScrollbarDisplayPolicy()
Возвращает политику отображения полос прокрутки.
Point getScrollPosition()
Возвращает текущие значения x,y в пределах дочернего элемента, которое отображается в позиции 0,0 области просмотра прокрученного панелей.
Adjustable getVAdjustable()
Возвращает объект ScrollPaneAdjustable, представляющий состояние вертикальной полосы прокрутки.
Dimension getViewportSize()
Возвращает текущий размер области просмотра ScrollPane.
int getVScrollbarWidth()
Возвращает ширину, которая будет занимать вертикальная полоса прокрутки, независимо от того, отображается ли она в данный момент виджетом или нет.
boolean isWheelScrollingEnabled()
Указывает, будет ли происходить прокрутка в ответ на движение колёсика мыши.
void layout()
Устарело.
С версии JDK 1.1, заменено на doLayout().
String paramString()
Возвращает строку, представляющую состояние этого ScrollPane.
void printComponents(Graphics g)
Выводит компонент в этом ScrollPane.
protected void processMouseWheelEvent(MouseWheelEvent e)
Обрабатывает события колёсика мыши, которые поступают в этот ScrollPane, прокручивая соответствующую сумму.
final 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, 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

Методы, объявленные в классе 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, 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

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Краткое описание полей

SCROLLBARS_AS_NEEDED

public static final int SCROLLBARS_AS_NEEDED
Указывает, что горизонтальная/вертикальная полоса прокрутки должна отображаться только тогда, когда размер дочернего элемента превышает размер области прокрутки в горизонтальном/вертикальном измерении.
См. также:
  • Constant Field Values

SCROLLBARS_ALWAYS

public static final int SCROLLBARS_ALWAYS
Указывает, что горизонтальные/вертикальные полосы прокрутки должны всегда отображаться независимо от соответствующих размеров области прокрутки и дочернего элемента.
См. также:
  • Constant Field Values

SCROLLBARS_NEVER

public static final int SCROLLBARS_NEVER
Указывает, что горизонтальные/вертикальные полосы прокрутки никогда не должны отображаться независимо от соответствующих размеров области прокрутки и дочернего элемента.
См. также:
  • Constant Field Values

Краткое описание конструкторов

ScrollPane

public ScrollPane() throws HeadlessException
Создает новый контейнер области прокрутки с политикой отображения полосы прокрутки «по мере необходимости».
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true
См. также:
  • GraphicsEnvironment.isHeadless()

ScrollPane

@ConstructorProperties("scrollbarDisplayPolicy") 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)
Добавляет указанный компонент в этот контейнер области прокрутки. Если область прокрутки содержит существующий дочерний компонент, этот компонент удаляется, и добавляется новый.
Переопределяет:
addImpl в классе Container
Параметры:
comp - компонент, который нужно добавить
constraints - не применимо
index - позиция дочернего компонента (должна быть <= 0)
См. также:
  • Container.add(Component)
  • Container.add(Component, int)
  • Container.add(Component, java.lang.Object)
  • Container.invalidate()
  • LayoutManager
  • LayoutManager2

getScrollbarDisplayPolicy

public int getScrollbarDisplayPolicy()
Возвращает политику отображения полос прокрутки.
Возвращает:
политика отображения полос прокрутки

getViewportSize

public Dimension getViewportSize()
Возвращает текущий размер окна просмотра области прокрутки.
Возвращает:
размер окна просмотра в пикселях

getHScrollbarHeight

public int getHScrollbarHeight()
Возвращает высоту, которая будет занимать горизонтальная полоса прокрутки, независимо от того, отображается она в данный момент областью прокрутки или нет.
Возвращает:
высота горизонтальной полосы прокрутки в пикселях

getVScrollbarWidth

public int getVScrollbarWidth()
Возвращает ширину, которая будет занимать вертикальная полоса прокрутки, независимо от того, отображается она в данный момент областью прокрутки или нет.
Возвращает:
ширина вертикальной полосы прокрутки в пикселях

getVAdjustable

public Adjustable getVAdjustable()
Возвращает объект ScrollPaneAdjustable, который представляет состояние вертикальной полосы прокрутки. Объявленный тип возвращаемого значения этого метода — Adjustable для сохранения обратной совместимости.
Возвращает:
состояние вертикальной полосы прокрутки
См. также:
  • ScrollPaneAdjustable

getHAdjustable

public Adjustable getHAdjustable()
Возвращает объект ScrollPaneAdjustable, который представляет состояние горизонтальной полосы прокрутки. Объявленный тип возвращаемого значения этого метода — Adjustable для сохранения обратной совместимости.
Возвращает:
состояние горизонтальной полосы прокрутки
См. также:
  • ScrollPaneAdjustable

setScrollPosition

public void setScrollPosition(int x, int y)
Прокручивает до указанной позиции в дочернем компоненте. Вызов этого метода допустим только в том случае, если область прокрутки содержит дочерний элемент. Указание позиции за пределами допустимых границ прокрутки дочернего элемента приведет к прокрутке до ближайшей допустимой позиции. Допустимые границы определяются как прямоугольник: x = 0, y = 0, ширина = (ширина дочернего элемента - ширина окна просмотра), высота = (высота дочернего элемента - высота окна просмотра). Это вспомогательный метод, который взаимодействует с объектами Adjustable, которые представляют состояние полос прокрутки.
Параметры:
x - позиция x, до которой нужно прокрутить
y - позиция y, до которой нужно прокрутить
Исключения:
NullPointerException - если область прокрутки не содержит дочернего элемента

setScrollPosition

public void setScrollPosition(Point p)
Прокручивает до указанной позиции в дочернем компоненте. Вызов этого метода допустим только в том случае, если область прокрутки содержит дочерний элемент, и указанная позиция находится в допустимых границах прокрутки дочернего элемента. Указание позиции за пределами допустимых границ прокрутки дочернего элемента приведет к прокрутке до ближайшей допустимой позиции. Допустимые границы определяются как прямоугольник: x = 0, y = 0, ширина = (ширина дочернего элемента - ширина окна просмотра), высота = (высота дочернего элемента - высота окна просмотра). Это вспомогательный метод, который взаимодействует с объектами Adjustable, которые представляют состояние полос прокрутки.
Параметры:
p - точка, представляющая позицию, до которой нужно прокрутить
Исключения:
NullPointerException - если p есть null

getScrollPosition

public Point getScrollPosition()
Возвращает текущую позицию x, y в дочернем элементе, которая отображается в позиции 0, 0 окна просмотра панели прокрутки. Это вспомогательный метод, который взаимодействует с регулируемыми объектами, которые представляют состояние полос прокрутки.
Возвращает:
координатная позиция текущей позиции прокрутки
Исключения:
NullPointerException - если область прокрутки не содержит дочернего элемента

setLayout

public final void setLayout(LayoutManager mgr)
Устанавливает менеджер компоновки для этого контейнера. Этот метод переопределен, чтобы предотвратить установку менеджера компоновки.
Переопределяет:
setLayout в классе Container
Параметры:
mgr - указанный менеджер компоновки
См. также:
  • Container.doLayout()
  • Container.getLayout()
  • Container.invalidate()

doLayout

public void doLayout()
Выполняет компоновку этого контейнера, изменяя размер его дочернего элемента до его предпочтительного размера. Если новый предпочтительный размер дочернего элемента приводит к тому, что текущая позиция прокрутки становится недопустимой, позиция прокрутки устанавливается в ближайшую допустимую позицию.
Переопределяет:
doLayout в классе Container
См. также:
  • Component.validate()

layout

@Deprecated public void layout()
Устарело.
Начиная с версии JDK 1.1, заменено на doLayout().
Переопределяет:
layout в классе Container

printComponents

public void printComponents(Graphics g)
Печатает компонент в этой области прокрутки.
Переопределяет:
printComponents в классе Container
Параметры:
g - указанное окно Graphics
См. также:
  • Component.print(java.awt.Graphics)
  • Component.printAll(java.awt.Graphics)

addNotify

public void addNotify()
Создаёт виджет полосы прокрутки.
Overrides:
addNotify in class Container
См. также:
  • Component.isDisplayable()
  • Container.removeNotify()

paramString

public String paramString()
Возвращает строку, представляющую состояние этой полосы прокрутки. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут отличаться в разных реализациях. Возвращаемая строка может быть пустой, но не null.
Overrides:
paramString in class Container
Возвращает:
строку параметров этой полосы прокрутки

processMouseWheelEvent

protected void processMouseWheelEvent(MouseWheelEvent e)
Обрабатывает события колёсика мыши, которые доставляются этой полосе прокрутки, прокручивая её на соответствующее количество.

Обратите внимание, что если параметр события null, поведение не определено и может привести к исключению.

Overrides:
processMouseWheelEvent in class Component
Параметры:
e - событие колёсика мыши
С:
1.4
См. также:
  • MouseWheelEvent
  • MouseWheelListener
  • Component.addMouseWheelListener(java.awt.event.MouseWheelListener)
  • Component.enableEvents(long)

eventTypeEnabled

protected boolean eventTypeEnabled(int type)
Если прокрутка колёсиком мыши включена, мы возвращаем true для событий MouseWheelEvent
С:
1.4

setWheelScrollingEnabled

public void setWheelScrollingEnabled(boolean handleWheel)
Включает/выключает прокрутку при перемещении колёсика мыши. Прокрутка колёсиком включена по умолчанию.
Параметры:
handleWheel - true если прокрутка должна выполняться автоматически для события MouseWheelEvent, false в противном случае.
С:
1.4
См. также:
  • isWheelScrollingEnabled()
  • MouseWheelEvent
  • MouseWheelListener

isWheelScrollingEnabled

public boolean isWheelScrollingEnabled()
Указывает, будет ли происходить прокрутка в ответ на вращение колёсика мыши. Прокрутка колёсиком включена по умолчанию.
Возвращает:
true если прокрутка колёсиком включена; в противном случае false
С:
1.4
См. также:
  • setWheelScrollingEnabled(boolean)

getAccessibleContext

public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этой полосой прокрутки. Для полос прокрутки AccessibleContext принимает форму AccessibleAWTScrollPane. Новый экземпляр AccessibleAWTScrollPane создаётся при необходимости.
Указано в:
getAccessibleContext в интерфейсе Accessible
Overrides:
getAccessibleContext in class Component
Возвращает:
AccessibleAWTScrollPane, который служит AccessibleContext для этой полосы прокрутки
С:
1.3

© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/ScrollPane.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API