Spec-Zone.ru › OpenJDK 8

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

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

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

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

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

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

Прокрутка колесом на мыши с колесом включена по умолчанию. Это можно отключить, используя setWheelScrollingEnabled. Прокрутку колесом можно настроить, установив блок и единичный приращение горизонтальных и вертикальных 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 int SCROLLBARS_ALWAYS

Указывает, что горизонтальные/вертикальные полосы прокрутки всегда должны отображаться независимо от соответствующих размеров элемента ScrollPane и дочернего элемента.

static int SCROLLBARS_AS_NEEDED

Указывает, что горизонтальная/вертикальная полоса прокрутки должна отображаться только тогда, когда размер дочернего элемента превышает размер ScrollPane в горизонтальном/вертикальном измерении.

static 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(int scrollbarDisplayPolicy)

Создаёт новый контейнер прокрутки.

Методы

Модификатор и тип Метод и описание
protected void addImpl(Component comp, Object constraints, int index)

Добавляет указанный компонент в этот контейнер прокрутки.

void addNotify()

Создаёт виджет прокрутки.

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()

Возвращает текущий размер области просмотра панели прокрутки.

int getVScrollbarWidth()

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

boolean isWheelScrollingEnabled()

Указывает, будет ли происходить прокрутка в ответ на колесо мыши.

void layout()

Устарело.

Начиная с версии JDK 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, 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, 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, revalidate, 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, 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

Указывает, что горизонтальная/вертикальная полоса прокрутки должна отображаться только тогда, когда размер дочернего элемента превышает размер области прокрутки в горизонтальном/вертикальном направлении.

См. также:
Значения постоянных полей

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
См. также:
GraphicsEnvironment.isHeadless()

ScrollPane

@ConstructorProperties(value="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 области просмотра прокрученного панели. Это удобный метод, который взаимодействует с объектами adjustable, представляющими состояние полос прокрутки.

Возвращает:
координатная позиция текущей позиции прокрутки
Исключения:
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 - указанное графическое окно
См. также:
Component.print(java.awt.Graphics), Component.printAll(java.awt.Graphics)

addNotify

public void addNotify()

Создает виджет области прокрутки.

Переопределяет:
addNotify в классе Container
См. также:
Component.isDisplayable(), Container.removeNotify()

paramString

public String paramString()

Возвращает строку, представляющую состояние этой ScrollPane. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут отличаться в различных реализациях. Возвращаемая строка может быть пустой, но не null.

Переопределяет:
paramString в классе Container
Возвращает:
строка параметров этой области прокрутки

processMouseWheelEvent

protected void processMouseWheelEvent(MouseWheelEvent e)

Обрабатывает события колесика мыши, которые передаются в эту ScrollPane путем прокрутки на соответствующее количество.

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

Переопределяет:
processMouseWheelEvent в классе Component
Параметры:
e - событие колесика мыши
С тех пор:
1.4
См. также:
MouseWheelEvent, MouseWheelListener, Component.addMouseWheelListener(java.awt.event.MouseWheelListener), Component.enableEvents(long)

eventTypeEnabled

protected boolean eventTypeEnabled(int type)

Если прокрутка колесиком мыши включена, мы возвращаем true для событий MouseWheelEvents

С тех пор:
1.4

setWheelScrollingEnabled

public void setWheelScrollingEnabled(boolean handleWheel)

Включает/выключает прокрутку в ответ на перемещение колесика мыши. Прокрутка колесиком мыши включена по умолчанию.

Параметры:
handleWheel - true если прокрутка должна выполняться автоматически для события MouseWheelEvent, false в противном случае.
С:
1.4
См. также:
isWheelScrollingEnabled(), MouseWheelEvent, MouseWheelListener

isWheelScrollingEnabled

public boolean isWheelScrollingEnabled()

Указывает, будет ли происходить прокрутка в ответ на событие мыши. Прокрутка колесика мыши включена по умолчанию.

С:
1.4
См. также:
setWheelScrollingEnabled(boolean)

getAccessibleContext

public AccessibleContext getAccessibleContext()

Получает AccessibleContext, связанный с этим ScrollPane. Для полосы прокрутки AccessibleContext имеет вид AccessibleAWTScrollPane. Новый AccessibleAWTScrollPane создаётся при необходимости.

Определено в:
getAccessibleContext в интерфейсе Accessible
Переопределяет:
getAccessibleContext в классе Component
Возвращает:
AccessibleAWTScrollPane, который служит AccessibleContext для этой полосы прокрутки
С:
1.3

© 1993, 2020, 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.

Spec-Zone.ru

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