Spec-Zone.ru › OpenJDK 27

Класс ScrollPaneLayout

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

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, работающими под управлением одной и той же версии Swing. Начиная с версии 1.4, в пакете java.beans добавлена поддержка долговременного хранения всех JavaBeans. См. 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
Модификатор и тип Поле Описание
static final String COLUMN_HEADER
Обозначает область в верхней части области просмотра между левым верхним и правым верхним углами.
static final String HORIZONTAL_SCROLLBAR
Обозначает горизонтальную полосу прокрутки.
static final int HORIZONTAL_SCROLLBAR_ALWAYS
Используется для задания политики горизонтальной полосы прокрутки, при которой горизонтальные полосы прокрутки отображаются всегда.
static final int HORIZONTAL_SCROLLBAR_AS_NEEDED
Используется для задания политики горизонтальной полосы прокрутки, при которой горизонтальные полосы прокрутки отображаются только при необходимости.
static final int HORIZONTAL_SCROLLBAR_NEVER
Используется для задания политики горизонтальной полосы прокрутки, при которой горизонтальные полосы прокрутки никогда не отображаются.
static final String HORIZONTAL_SCROLLBAR_POLICY
Обозначает свойство политики горизонтальной полосы прокрутки.
static final String LOWER_LEADING_CORNER
Обозначает нижний угол с ведущей стороны области просмотра.
static final String LOWER_LEFT_CORNER
Обозначает левый нижний угол области просмотра.
static final String LOWER_RIGHT_CORNER
Обозначает правый нижний угол области просмотра.
static final String LOWER_TRAILING_CORNER
Обозначает нижний угол с ведомой стороны области просмотра.
static final String ROW_HEADER
Обозначает область вдоль левой стороны области просмотра между левым верхним и левым нижним углами.
static final String UPPER_LEADING_CORNER
Обозначает верхний угол с ведущей стороны области просмотра.
static final String UPPER_LEFT_CORNER
Обозначает левый верхний угол области просмотра.
static final String UPPER_RIGHT_CORNER
Обозначает правый верхний угол области просмотра.
static final String UPPER_TRAILING_CORNER
Обозначает верхний угол с ведомой стороны области просмотра.
static final String VERTICAL_SCROLLBAR
Обозначает вертикальную полосу прокрутки.
static final int VERTICAL_SCROLLBAR_ALWAYS
Используется для задания политики вертикальной полосы прокрутки, при которой вертикальные полосы прокрутки отображаются всегда.
static final int VERTICAL_SCROLLBAR_AS_NEEDED
Используется для задания политики вертикальной полосы прокрутки, при которой вертикальные полосы прокрутки отображаются только при необходимости.
static final int VERTICAL_SCROLLBAR_NEVER
Используется для задания политики вертикальной полосы прокрутки, при которой вертикальные полосы прокрутки никогда не отображаются.
static final String VERTICAL_SCROLLBAR_POLICY
Обозначает свойство политики вертикальной полосы прокрутки.
static final String 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 равен размеру внутренних отступов плюс минимальный размер области просмотра, плюс внутренние отступы границы области просмотра области прокрутки, плюс минимальный размер видимых заголовков, плюс минимальный размер полос прокрутки, для которых displayPolicy не равен 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
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект другому объекту.
protected void finalize()
Устарел, подлежит удалению: этот элемент API может быть удален в будущей версии.
Финализация устарела и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

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

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, 2026, 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.

Spec-Zone.ru

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