Spec-Zone.ru › OpenJDK 25

Класс 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
Версия 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
Политика отображения вертикальной полосы прокрутки.

Поля, объявленные в интерфейсе 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 версии Swing 1.1 заменено на JScrollPane.getViewportBorderBounds().
void layoutContainer(Container parent)
Выполняет компоновку панели прокрутки.
Dimension minimumLayoutSize(Container parent)
Минимальный размер ScrollPane равен сумме размера внутренних отступов, минимального размера области просмотра, внутренних отступов границы области просмотра панели прокрутки, минимального размера видимых заголовков и минимального размера полос прокрутки, политика отображения которых не равна NEVER.
Dimension preferredLayoutSize(Container parent)
Предпочтительный размер ScrollPane равен сумме размера внутренних отступов, предпочтительного размера области просмотра, предпочтительного размера видимых заголовков и предпочтительного размера полос прокрутки, которые будут отображаться с учетом текущего представления и текущих политик отображения полос прокрутки.
void removeLayoutComponent(Component c)
Удаляет указанный компонент из компоновки.
void setHorizontalScrollBarPolicy(int x)
Задает политику отображения горизонтальной полосы прокрутки.
void setVerticalScrollBarPolicy(int x)
Задает политику отображения вертикальной полосы прокрутки.
void syncWithScrollPane(JScrollPane sp)
Этот метод вызывается после того, как ScrollPaneLayout назначен в качестве LayoutManager для JScrollPane.

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

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

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

viewport

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

vsb

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

hsb

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

rowHead

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

colHead

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

lowerLeft

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

lowerRight

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

upperLeft

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

upperRight

protected Component upperRight
Компонент, отображаемый в правом верхнем углу. По умолчанию — null.
См. также:
  • JScrollPane.setCorner(String, 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, отвечающий за горизонтальную прокрутку.
Возвращает:
объект JScrollBar, отвечающий за горизонтальную прокрутку
См. также:
  • JScrollPane.getHorizontalScrollBar()

getVerticalScrollBar

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

getRowHeader

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

getColumnHeader

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

getCorner

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

preferredLayoutSize

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

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

Определено в:
preferredLayoutSize в интерфейсе LayoutManager
Параметры:
parent — Container, для которого выполняется компоновка
Возвращает:
объект Dimension, задающий предпочтительный размер области просмотра и любых полос прокрутки
См. также:
  • ViewportLayout
  • LayoutManager

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
Минимальный размер ScrollPane равен сумме размера внутренних отступов, минимального размера области просмотра, внутренних отступов границы области просмотра панели прокрутки, минимального размера видимых заголовков и минимального размера полос прокрутки, политика отображения которых не равна NEVER.
Определено в:
minimumLayoutSize в интерфейсе LayoutManager
Параметры:
parent — Container, для которого выполняется компоновка
Возвращает:
объект Dimension, задающий минимальный размер
См. также:
  • LayoutManager.preferredLayoutSize(Container)

layoutContainer

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

getViewportBorderBounds

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

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, где представлены более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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/javax/swing/ScrollPaneLayout.html

Spec-Zone.ru

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