Spec-Zone.ru › OpenJDK 24

Класс ScrollPaneLayout

java.lang.Object
javax.swing.ScrollPaneLayout
Все реализуемые интерфейсы:
LayoutManager, Serializable, ScrollPaneConstants
Прямые известные подклассы:
ScrollPaneLayout.UIResource
public class ScrollPaneLayout extends Object implements LayoutManager, ScrollPaneConstants, Serializable
Менеджер компоновки, используемый классом JScrollPane. JScrollPaneLayout отвечает за девять компонентов: область просмотра, две полосы прокрутки, заголовок строки, заголовок столбца и четыре компонента «угла».

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans добавлена в пакет java.beans. Пожалуйста, обратитесь к XMLEncoder.

С:
1.2
См. также:
  • JScrollPane
  • JViewport

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

Модификатор и тип Класс Описание
static class  ScrollPaneLayout.UIResource
Версия UI-ресурсов для ScrollPaneLayout.

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

Модификатор и тип Поле Описание
protected JViewport colHead
Компонент заголовка столбца.
protected JScrollBar hsb
Компонент горизонтальной полосы прокрутки области прокрутки.
protected int hsbPolicy
Политика отображения горизонтальной полосы прокрутки.
protected Component lowerLeft
Компонент для отображения в нижнем левом углу.
protected Component lowerRight
Компонент для отображения в нижнем правом углу.
protected JViewport rowHead
Компонент заголовка строки.
protected Component upperLeft
Компонент для отображения в верхнем левом углу.
protected Component upperRight
Компонент для отображения в верхнем правом углу.
protected JViewport viewport
Компонент области просмотра области прокрутки.
protected JScrollBar vsb
Компонент вертикальной полосы прокрутки области прокрутки.
protected int vsbPolicy
Политика отображения вертикальной полосы прокрутки.

Поля, объявленные в интерфейсе javax.swing.ScrollPaneConstants

COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT

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

Конструктор Описание
ScrollPaneLayout()
Создает ScrollPaneLayout.

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

Модификатор и тип Метод Описание
void addLayoutComponent(String s, Component c)
Добавляет указанный компонент в компоновку.
protected Component addSingletonComponent(Component oldC, Component newC)
Удаляет существующий компонент.
JViewport getColumnHeader()
Возвращает объект JViewport, который является заголовком столбца.
Component getCorner(String key)
Возвращает Component в указанном углу.
JScrollBar getHorizontalScrollBar()
Возвращает объект JScrollBar, отвечающий за горизонтальную прокрутку.
int getHorizontalScrollBarPolicy()
Возвращает политику отображения горизонтальной полосы прокрутки.
JViewport getRowHeader()
Возвращает объект JViewport, который является заголовком строки.
JScrollBar getVerticalScrollBar()
Возвращает объект JScrollBar, который обрабатывает вертикальную прокрутку.
int getVerticalScrollBarPolicy()
Возвращает политику отображения вертикальной полосы прокрутки.
JViewport getViewport()
Возвращает объект JViewport, отображающий прокручиваемое содержимое.
Rectangle getViewportBorderBounds(JScrollPane scrollpane)
Устарело.
Начиная с JDK версии Swing1.1, заменено на JScrollPane.getViewportBorderBounds().
void layoutContainer(Container parent)
Выполняет компоновку области прокрутки.
Dimension minimumLayoutSize(Container parent)
Минимальный размер ScrollPane — это размер отступов плюс минимальный размер области просмотра, плюс отступы viewportBorder области прокрутки, плюс минимальный размер видимых заголовков, плюс минимальный размер полос прокрутки, для которых политика отображения не NEVER.
Dimension preferredLayoutSize(Container parent)
Предпочтительный размер ScrollPane — это размер отступов плюс предпочтительный размер области просмотра плюс предпочтительный размер видимых заголовков плюс предпочтительный размер полос прокрутки, которые будут отображаться с учетом текущего вида и текущих политик отображения полос прокрутки.
void removeLayoutComponent(Component c)
Удаляет указанный компонент из компоновки.
void setHorizontalScrollBarPolicy(int x)
Устанавливает политику отображения горизонтальной полосы прокрутки.
void setVerticalScrollBarPolicy(int x)
Устанавливает политику отображения вертикальной полосы прокрутки.
void syncWithScrollPane(JScrollPane sp)
Этот метод вызывается после того, как ScrollPaneLayout задан в качестве менеджера компоновки для JScrollPane.

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

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

Подробное описание полей

viewport

protected JViewport viewport
Дочерний элемент viewport области прокрутки. По умолчанию пустой JViewport.
См. также:
  • JScrollPane.setViewport(javax.swing.JViewport)

vsb

protected JScrollBar vsb
Дочерний элемент вертикальной полосы прокрутки области прокрутки. По умолчанию JScrollBar.
См. также:
  • JScrollPane.setVerticalScrollBar(javax.swing.JScrollBar)

hsb

protected JScrollBar hsb
Дочерний элемент горизонтальной полосы прокрутки области прокрутки. По умолчанию JScrollBar.
См. также:
  • JScrollPane.setHorizontalScrollBar(javax.swing.JScrollBar)

rowHead

protected JViewport rowHead
Дочерний элемент заголовка строки. По умолчанию null.
См. также:
  • JScrollPane.setRowHeader(javax.swing.JViewport)

colHead

protected JViewport colHead
Дочерний элемент заголовка столбца. По умолчанию null.
См. также:
  • JScrollPane.setColumnHeader(javax.swing.JViewport)

lowerLeft

protected Component lowerLeft
Компонент для отображения в нижнем левом углу. По умолчанию null.
См. также:
  • JScrollPane.setCorner(java.lang.String, java.awt.Component)

lowerRight

protected Component lowerRight
Компонент для отображения в нижнем правом углу. По умолчанию null.
См. также:
  • JScrollPane.setCorner(java.lang.String, java.awt.Component)

upperLeft

protected Component upperLeft
Компонент для отображения в верхнем левом углу. По умолчанию null.
См. также:
  • JScrollPane.setCorner(java.lang.String, java.awt.Component)

upperRight

protected Component upperRight
Компонент для отображения в верхнем правом углу. По умолчанию null.
См. также:
  • JScrollPane.setCorner(java.lang.String, java.awt.Component)

vsbPolicy

protected int vsbPolicy
Политика отображения вертикальной полосы прокрутки. По умолчанию ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED.

Это поле устарело, используйте поле JScrollPane вместо него.

См. также:
  • JScrollPane.setVerticalScrollBarPolicy(int)

hsbPolicy

protected int hsbPolicy
Политика отображения горизонтальной полосы прокрутки. По умолчанию ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED.

Это поле устарело, используйте поле JScrollPane вместо него.

См. также:
  • JScrollPane.setHorizontalScrollBarPolicy(int)

Подробное описание конструкторов

ScrollPaneLayout

public ScrollPaneLayout()
Создает ScrollPaneLayout.

Подробное описание методов

syncWithScrollPane

public void syncWithScrollPane(JScrollPane sp)
Этот метод вызывается после того, как ScrollPaneLayout задан в качестве LayoutManager для JScrollPane. Он инициализирует все внутренние поля, которые обычно устанавливаются addLayoutComponent. Например:
 ScrollPaneLayout mySPLayout = new ScrollPanelLayout() {
     public void layoutContainer(Container p) {
         super.layoutContainer(p);
         // do some extra work here ...
     }
 };
 scrollpane.setLayout(mySPLayout):
 
Параметры:
sp - экземпляр JScrollPane

addSingletonComponent

protected Component addSingletonComponent(Component oldC, Component newC)
Удаляет существующий компонент. При добавлении нового компонента, например, левого угла или вертикальной полосы прокрутки, старый компонент, если он существует, должен быть удален.

Этот метод возвращает newC. Если oldC не равно newC и не является null, он будет удален из своего родителя.

Параметры:
oldC - Component для замены
newC - Component для добавления
Возвращает:
newC

addLayoutComponent

public void addLayoutComponent(String s, Component c)
Добавляет указанный компонент в макет. Макет идентифицируется по одному из следующих значений:
  • ScrollPaneConstants.VIEWPORT
  • ScrollPaneConstants.VERTICAL_SCROLLBAR
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR
  • ScrollPaneConstants.ROW_HEADER
  • ScrollPaneConstants.COLUMN_HEADER
  • ScrollPaneConstants.LOWER_LEFT_CORNER
  • ScrollPaneConstants.LOWER_RIGHT_CORNER
  • ScrollPaneConstants.UPPER_LEFT_CORNER
  • ScrollPaneConstants.UPPER_RIGHT_CORNER
Определено в:
addLayoutComponent в интерфейсе LayoutManager
Параметры:
s - идентификатор компонента
c - добавляемый компонент
Исключения:
IllegalArgumentException - если s является некорректным ключом

removeLayoutComponent

public void removeLayoutComponent(Component c)
Удаляет указанный компонент из макета.
Определено в:
removeLayoutComponent в интерфейсе LayoutManager
Параметры:
c - удаляемый компонент

getVerticalScrollBarPolicy

public int getVerticalScrollBarPolicy()
Возвращает политику отображения вертикальной полосы прокрутки.
Возвращает:
целое число, определяющее политику отображения
См. также:
  • setVerticalScrollBarPolicy(int)

setVerticalScrollBarPolicy

public void setVerticalScrollBarPolicy(int x)
Устанавливает политику отображения вертикальной полосы прокрутки. Доступные варианты:
  • ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED
  • ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER
  • ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS
Примечание: Приложения должны использовать JScrollPane версию этого метода. Она существует только для обратной совместимости со Swing 1.0.2 (и более ранними) версиями этого класса.
Параметры:
x - целое число, определяющее политику отображения
Исключения:
IllegalArgumentException - если x - некорректная политика отображения вертикальной полосы прокрутки, как указано выше

getHorizontalScrollBarPolicy

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

setHorizontalScrollBarPolicy

public void setHorizontalScrollBarPolicy(int x)
Устанавливает политику отображения горизонтальной полосы прокрутки. Доступные варианты:
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS
Примечание: Приложения должны использовать JScrollPane версию этого метода. Она существует только для обратной совместимости со Swing 1.0.2 (и более ранними) версиями этого класса.
Параметры:
x - целое число, определяющее политику отображения
Исключения:
IllegalArgumentException - если x некорректная политика отображения горизонтальной полосы прокрутки, как указано выше

getViewport

public JViewport getViewport()
Возвращает объект JViewport, отображающий содержимое с возможностью прокрутки.
Возвращает:
объект JViewport, отображающий содержимое с возможностью прокрутки
См. также:
  • JScrollPane.getViewport()

getHorizontalScrollBar

public JScrollBar getHorizontalScrollBar()
Возвращает объект JScrollBar, управляющий горизонтальной прокруткой.
Returns:
объект JScrollBar, управляющий горизонтальной прокруткой
См. также:
  • JScrollPane.getHorizontalScrollBar()

getVerticalScrollBar

public JScrollBar getVerticalScrollBar()
Возвращает объект JScrollBar, управляющий вертикальной прокруткой.
Returns:
объект JScrollBar, управляющий вертикальной прокруткой
См. также:
  • JScrollPane.getVerticalScrollBar()

getRowHeader

public JViewport getRowHeader()
Возвращает объект JViewport, являющийся заголовком строки.
Returns:
объект JViewport, являющийся заголовком строки
См. также:
  • JScrollPane.getRowHeader()

getColumnHeader

public JViewport getColumnHeader()
Возвращает объект JViewport, являющийся заголовком столбца.
Returns:
объект JViewport, являющийся заголовком столбца
См. также:
  • JScrollPane.getColumnHeader()

getCorner

public Component getCorner(String key)
Возвращает Component в указанном углу.
Parameters:
key - строка, определяющая угол
Returns:
Component в указанном углу, как определено в ScrollPaneConstants; если key не является одним из четырёх углов, возвращается null
См. также:
  • JScrollPane.getCorner(java.lang.String)

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
Предпочтительный размер ScrollPane — это размер отступов плюс предпочтительный размер области просмотра, плюс предпочтительный размер видимых заголовков, плюс предпочтительный размер полос прокрутки, которые будут отображаться с учетом текущего вида и текущих параметров отображения полос прокрутки.

Обратите внимание, что заголовок строки рассчитывается как часть предпочтительной ширины, а заголовок столбца — как часть предпочтительного размера.

Specified by:
preferredLayoutSize в интерфейсе LayoutManager
Parameters:
parent - Container, который будет выводиться
Returns:
объект Dimension, определяющий предпочтительный размер области просмотра и полос прокрутки
См. также:
  • ViewportLayout
  • LayoutManager

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
Минимальный размер ScrollPane — это размер отступов плюс минимальный размер области просмотра, плюс отступы viewportBorder прокручиваемой области, плюс минимальный размер видимых заголовков, плюс минимальный размер полос прокрутки, чья политика отображения не NEVER.
Specified by:
minimumLayoutSize в интерфейсе LayoutManager
Parameters:
parent - Container, который будет выводиться
Returns:
объект Dimension, определяющий минимальный размер
См. также:
  • LayoutManager.preferredLayoutSize(java.awt.Container)

layoutContainer

public void layoutContainer(Container parent)
Выводит прокручиваемую область. Размещение компонентов зависит от следующих ограничений:
  • Заголовок строки, если он присутствует и виден, получает свою предпочтительную ширину и высоту области просмотра.
  • Заголовок столбца, если он присутствует и виден, получает свою предпочтительную высоту и ширину области просмотра.
  • Если требуется вертикальная полоса прокрутки, т.е. если высота области просмотра меньше высоты просмотра или если политика отображения displayPolicy — ALWAYS, она обрабатывается как заголовок строки с точки зрения размеров и делается видимой.
  • Если требуется горизонтальная полоса прокрутки, она обрабатывается как заголовок столбца (см. абзац выше относительно вертикальной полосы прокрутки).
  • Если у прокручиваемой области есть не-null viewportBorder, то для этого выделяется место.
  • Область просмотра получает доступное место после учета предыдущих ограничений.
  • Компоненты угла, если они предоставлены, выравниваются с концами полос прокрутки и заголовков. Если есть вертикальная полоса прокрутки, отображаются правые углы; если есть горизонтальная полоса прокрутки, отображаются нижние углы; заголовок строки получает левые углы, а заголовок столбца — верхние углы.
Specified by:
layoutContainer в интерфейсе LayoutManager
Parameters:
parent - Container, который нужно вывести

getViewportBorderBounds

@Deprecated public Rectangle getViewportBorderBounds(JScrollPane scrollpane)
Deprecated.
С версии JDK Swing 1.1 заменено на JScrollPane.getViewportBorderBounds().
Возвращает границы рамки вокруг области просмотра указанной прокручиваемой панели.
Parameters:
scrollpane - экземпляр JScrollPane
Returns:
размер и положение рамки области просмотра

© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/ScrollPaneLayout.html

Spec-Zone.ru

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