Класс ScrollPane
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable,Accessible
public class ScrollPane extends Container implements Accessible
- по мере необходимости: полосы прокрутки создаются и отображаются только при необходимости виджетом
- всегда: полосы прокрутки создаются и всегда отображаются виджетом
- никогда: полосы прокрутки никогда не создаются или отображаются виджетом
Состояние горизонтальной и вертикальной полос прокрутки представлено двумя объектами 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 |
Создаёт новый контейнер ScrollPane. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected final void |
addImpl |
Добавляет указанный компонент в этот контейнер ScrollPane. |
void |
addNotify() |
Создаёт виджет ScrollPane. |
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() |
Возвращает текущий размер области просмотра ScrollPane. |
int |
getVScrollbarWidth() |
Возвращает ширину, которая будет занимать вертикальная полоса прокрутки, независимо от того, отображается ли она в данный момент виджетом или нет. |
boolean |
isWheelScrollingEnabled() |
Указывает, будет ли происходить прокрутка в ответ на движение колёсика мыши. |
void |
layout() |
Устарело. |
String |
paramString() |
Возвращает строку, представляющую состояние этого ScrollPane. |
void |
printComponents |
Выводит компонент в этом ScrollPane. |
protected void |
processMouseWheelEvent |
Обрабатывает события колёсика мыши, которые поступают в этот ScrollPane, прокручивая соответствующую сумму. |
final void |
setLayout |
Устанавливает менеджер компоновки для этого контейнера. |
void |
setScrollPosition |
Прокручивает до указанной позиции в пределах дочернего компонента. |
void |
setScrollPosition |
Прокручивает до указанной позиции в пределах дочернего компонента. |
void |
setWheelScrollingEnabled |
Включает/выключает прокрутку в ответ на перемещение колёсика мыши. |
Методы, объявленные в классе 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
Краткое описание полей
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)
- Переопределяет:
-
addImplв классеContainer - Параметры:
-
comp- компонент, который нужно добавить -
constraints- не применимо -
index- позиция дочернего компонента (должна быть <= 0) - См. также:
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- точка, представляющая позицию, до которой нужно прокрутить - Исключения:
-
NullPointerException- еслиpестьnull
getScrollPosition
public Point getScrollPosition()
- Возвращает:
- координатная позиция текущей позиции прокрутки
- Исключения:
-
NullPointerException- если область прокрутки не содержит дочернего элемента
setLayout
public final void setLayout(LayoutManager mgr)
- Переопределяет:
-
setLayoutв классеContainer - Параметры:
-
mgr- указанный менеджер компоновки - См. также:
doLayout
public void doLayout()
- Переопределяет:
-
doLayoutв классеContainer - См. также:
layout
@Deprecated public void layout()
doLayout().- Переопределяет:
-
layoutв классеContainer
printComponents
public void printComponents(Graphics g)
- Переопределяет:
-
printComponentsв классеContainer - Параметры:
-
g- указанное окно Graphics - См. также:
addNotify
public void addNotify()
- Overrides:
-
addNotifyin classContainer - См. также:
paramString
public String paramString()
null.- Overrides:
-
paramStringin classContainer - Возвращает:
- строку параметров этой полосы прокрутки
processMouseWheelEvent
protected void processMouseWheelEvent(MouseWheelEvent e)
Обратите внимание, что если параметр события null, поведение не определено и может привести к исключению.
- Overrides:
-
processMouseWheelEventin classComponent - Параметры:
-
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 - Overrides:
-
getAccessibleContextin classComponent - Возвращает:
- 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
doLayout().