Spec-Zone.ru › OpenJDK 24

Класс JScrollPane

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JScrollPane
Все реализуемые интерфейсы:
ImageObserver, MenuContainer, Serializable, Accessible, ScrollPaneConstants
@JavaBean(defaultProperty="UI", description="A specialized container that manages a viewport, optional scrollbars and headers") public class JScrollPane extends JComponent implements ScrollPaneConstants, Accessible
Обеспечивает прокручиваемый вид лёгкого компонента. JScrollPane управляет областью просмотра, необязательными вертикальной и горизонтальной полосами прокрутки, а также необязательными областями заголовков строк и столбцов. Вы можете найти документацию по JScrollPane в Как использовать полосы прокрутки, разделе в Java Tutorial. Обратите внимание, что JScrollPane не поддерживает тяжёлые компоненты.

Пример:

The following text describes this image.

JViewport предоставляет окно, или "область просмотра", к источнику данных — например, текстовому файлу. Этот источник данных является "прокручиваемым клиентом" (также известным как модель данных), отображаемый в представлении JViewport. JScrollPane в основном состоит из JScrollBar, JViewport и соединений между ними, как показано на диаграмме справа.

В дополнение к полосам прокрутки и области просмотра, JScrollPane может иметь заголовок столбца и заголовок строки. Каждый из них — объект JViewport, который вы задаёте с помощью setRowHeaderView и setColumnHeaderView. Область просмотра заголовков столбцов автоматически прокручивается влево и вправо, отслеживая прокрутку по горизонтали основной области просмотра. (Однако она никогда не прокручивается по вертикали.) Заголовок строки действует аналогично.

В точке пересечения двух полос прокрутки, заголовка строки и заголовка столбца, или полосы прокрутки и одного из заголовков, оба компонента обрываются, оставляя прямоугольное пространство, которое по умолчанию пустое. Эти пространства могут потенциально существовать в любом из четырёх углов. На предыдущей диаграмме верхний правый пустой участок присутствует и обозначен меткой "компонент угла".

Любое количество таких пустых пространств можно заменить, используя метод setCorner для добавления компонента в конкретный угол. (Примечание: один и тот же компонент не может быть добавлен в несколько углов.) Это полезно, если вы хотите добавить дополнительное оформление или функциональность в полосу прокрутки. Размер каждого компонента угла полностью определяется размером заголовков и/или полос прокрутки, которые его окружают.

Компонент угла будет виден только в том случае, если в этом углу есть пустое место для его существования. Например, рассмотрите компонент, размещённый в верхнем правом углу полосы прокрутки со столбцом заголовка. Если вертикальная полоса прокрутки полосы прокрутки отсутствует, возможно, потому что компонент просмотра не вырос достаточно, чтобы её потребовать, тогда компонент угла не будет показан (поскольку в этом углу нет пустого пространства, созданного пересечением заголовка и вертикальной полосы прокрутки). Принудительное постоянное отображение полосы прокрутки, с помощью setVerticalScrollBarPolicy(VERTICAL_SCROLLBAR_ALWAYS), обеспечит, что пространство для компонента угла всегда существует.

Чтобы добавить рамку вокруг основной области просмотра, вы можете использовать setViewportBorder. (Конечно, вы также можете добавить рамку вокруг всей полосы прокрутки, используя setBorder.)

Общая операция — установка цвета фона, который будет использоваться, если основная область просмотра меньше, чем область просмотра, или не является непрозрачной. Это можно сделать, установив цвет фона области просмотра через scrollPane.getViewport().setBackground(). Причина установки цвета области просмотра, а не полосы прокрутки, в том, что по умолчанию JViewport непрозрачна, что, среди прочего, означает, что она полностью заполнит свой фон своим цветом фона. Поэтому, когда JScrollPane отрисовывает свой фон, область просмотра, как правило, будет отрисовываться поверх него.

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

  1. Если представление реализует Scrollable, используется комбинация getPreferredScrollableViewportSize, getScrollableTracksViewportWidth и getScrollableTracksViewportHeight, иначе
  2. используется getPreferredSize.

Предупреждение: Swing не является потокобезопасным. Дополнительную информацию см. в Политике потоков Swing.

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

Since:
1.2
См. также:
  • JScrollBar
  • JViewport
  • ScrollPaneLayout
  • Scrollable
  • Component.getPreferredSize()
  • setViewportView(java.awt.Component)
  • setRowHeaderView(java.awt.Component)
  • setColumnHeaderView(java.awt.Component)
  • setCorner(java.lang.String, java.awt.Component)
  • setViewportBorder(javax.swing.border.Border)

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

Модификатор и тип Класс Описание
protected class  JScrollPane.AccessibleJScrollPane
Этот класс реализует поддержку доступности для класса JScrollPane.
protected class  JScrollPane.ScrollBar
По умолчанию JScrollPane создаёт полосы прокрутки, которые являются экземплярами этого класса.

Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent

JComponent.AccessibleJComponent

Вложенные классы/интерфейсы, объявленные в классе java.awt.Container

Container.AccessibleAWTContainer

Вложенные классы/интерфейсы, объявленные в классе java.awt.Component

Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy

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

Модификатор и тип Поле Описание
protected JViewport columnHeader
Дочерний элемент заголовка столбца.
protected JScrollBar horizontalScrollBar
Дочерний элемент горизонтальной полосы прокрутки области прокрутки.
protected int horizontalScrollBarPolicy
Политика отображения горизонтальной полосы прокрутки.
protected Component lowerLeft
Компонент для отображения в левом нижнем углу.
protected Component lowerRight
Компонент для отображения в правом нижнем углу.
protected JViewport rowHeader
Дочерний элемент заголовка строки.
protected Component upperLeft
Компонент для отображения в левом верхнем углу.
protected Component upperRight
Компонент для отображения в правом верхнем углу.
protected JScrollBar verticalScrollBar
Дочерний элемент вертикальной полосы прокрутки области прокрутки.
protected int verticalScrollBarPolicy
Политика отображения вертикальной полосы прокрутки.
protected JViewport viewport
Дочерний элемент области просмотра области прокрутки.

Поля, объявленные в классе javax.swing.JComponent

listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW

Поля, объявленные в классе 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

Поля, объявленные в интерфейсе 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

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

Конструктор Описание
JScrollPane()
Создаёт пустую (без области просмотра) JScrollPane, где горизонтальные и вертикальные полосы прокрутки отображаются при необходимости.
JScrollPane(int vsbPolicy, int hsbPolicy)
Создаёт пустую (без области просмотра) JScrollPane с заданными политиками полос прокрутки.
JScrollPane(Component view)
Создаёт JScrollPane, отображающий содержимое указанного компонента, где обе горизонтальная и вертикальная полосы прокрутки появляются всякий раз, когда содержимое компонента больше, чем область просмотра.
JScrollPane(Component view, int vsbPolicy, int hsbPolicy)
Создаёт JScrollPane, отображающий компонент просмотра в области просмотра, позиция просмотра которой может быть управляема с помощью пары полос прокрутки.

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

Модификатор и тип Метод Описание
JScrollBar createHorizontalScrollBar()
Возвращает JScrollPane.ScrollBar по умолчанию.
JScrollBar createVerticalScrollBar()
Возвращает JScrollPane.ScrollBar по умолчанию.
protected JViewport createViewport()
Возвращает новый JViewport по умолчанию.
AccessibleContext getAccessibleContext()
Возвращает AccessibleContext, связанный с этим JScrollPane.
JViewport getColumnHeader()
Возвращает заголовок колонки.
Component getCorner(String key)
Возвращает компонент в указанном углу.
JScrollBar getHorizontalScrollBar()
Возвращает горизонтальную полосу прокрутки, управляющую горизонтальным положением просмотра.
int getHorizontalScrollBarPolicy()
Возвращает значение политики горизонтальной полосы прокрутки.
JViewport getRowHeader()
Возвращает заголовок строки.
ScrollPaneUI getUI()
Возвращает объект темы оформления (L&F), который отображает этот компонент.
String getUIClassID()
Возвращает суффикс, используемый для построения имени класса L&F, используемого для отображения этого компонента.
JScrollBar getVerticalScrollBar()
Возвращает вертикальную полосу прокрутки, управляющую вертикальным положением просмотра.
int getVerticalScrollBarPolicy()
Возвращает значение политики вертикальной полосы прокрутки.
JViewport getViewport()
Возвращает текущий JViewport.
Border getViewportBorder()
Возвращает объект Border, окружающий область просмотра.
Rectangle getViewportBorderBounds()
Возвращает границы рамки области просмотра.
boolean isValidateRoot()
Переопределено для возвращения true, чтобы любые вызовы revalidate для любого потомка этого JScrollPane вызывали валидацию всего дерева, начиная с этого JScrollPane.
boolean isWheelScrollingEnabled()
Указывает, будет ли происходить прокрутка в ответ на колесо мыши.
protected String paramString()
Возвращает строковое представление этого JScrollPane.
void setColumnHeader(JViewport columnHeader)
Удаляет старый columnHeader, если он существует; если новый columnHeader не null, синхронизирует координату x его viewPosition с областью просмотра (если она есть), а затем добавляет его в JScrollPane.
void setColumnHeaderView(Component view)
Создает область просмотра заголовка колонки, если необходимо, устанавливает её представление и добавляет её в JScrollPane.
void setComponentOrientation(ComponentOrientation co)
Устанавливает ориентацию для вертикальной и горизонтальной полос прокрутки, как определено аргументом ComponentOrientation.
void setCorner(String key, Component corner)
Добавляет дочерний элемент, который будет отображаться в одном из углов полос прокрутки, если есть место.
void setHorizontalScrollBar(JScrollBar horizontalScrollBar)
Добавляет полосу прокрутки, управляющую горизонтальным положением просмотра, в JScrollPane.
void setHorizontalScrollBarPolicy(int policy)
Определяет, когда горизонтальная полоса прокрутки появляется в JScrollPane.
void setLayout(LayoutManager layout)
Устанавливает менеджер компоновки для этого JScrollPane.
void setRowHeader(JViewport rowHeader)
Удаляет старый rowHeader, если он существует; если новый rowHeader не null, синхронизирует координату y его viewPosition с областью просмотра (если она есть), а затем добавляет его в JScrollPane.
void setRowHeaderView(Component view)
Создаёт область просмотра заголовка строки, если необходимо, устанавливает её представление, а затем добавляет её в JScrollPane.
void setUI(ScrollPaneUI ui)
Устанавливает объект ScrollPaneUI, обеспечивающий тему оформления (L&F) для этого компонента.
void setVerticalScrollBar(JScrollBar verticalScrollBar)
Добавляет полосу прокрутки, управляющую вертикальным положением просмотра, в JScrollPane.
void setVerticalScrollBarPolicy(int policy)
Определяет, когда вертикальная полоса прокрутки появляется в JScrollPane.
void setViewport(JViewport viewport)
Удаляет старую область просмотра (если она есть); принудительно устанавливает viewPosition новой области просмотра в квадранте +x,+y; синхронизирует заголовки строк и столбцов (если они есть) с новой областью просмотра; и, наконец, синхронизирует полосы прокрутки и заголовки с новой областью просмотра.
void setViewportBorder(Border viewportBorder)
Добавляет рамку вокруг области просмотра.
void setViewportView(Component view)
Создаёт область просмотра, если необходимо, а затем устанавливает её представление.
void setWheelScrollingEnabled(boolean handleWheel)
Включает/отключает прокрутку в ответ на перемещение колеса мыши.
void updateUI()
Заменяет текущий объект ScrollPaneUI версией из текущего значения по умолчанию.

Методы, объявленные в классе javax.swing.JComponent

addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update

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

add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree

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

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle

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

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

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

verticalScrollBarPolicy

protected int verticalScrollBarPolicy
Политика отображения вертикальной полосы прокрутки. По умолчанию значение ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED.
См. также:
  • setVerticalScrollBarPolicy(int)

horizontalScrollBarPolicy

protected int horizontalScrollBarPolicy
Политика отображения горизонтальной полосы прокрутки. По умолчанию значение ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED.
См. также:
  • setHorizontalScrollBarPolicy(int)

viewport

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

verticalScrollBar

protected JScrollBar verticalScrollBar
Вертикальная полоса прокрутки JScrollPane. По умолчанию JScrollBar.
См. также:
  • setVerticalScrollBar(javax.swing.JScrollBar)

horizontalScrollBar

protected JScrollBar horizontalScrollBar
Горизонтальная полоса прокрутки JScrollPane. По умолчанию JScrollBar.
См. также:
  • setHorizontalScrollBar(javax.swing.JScrollBar)

rowHeader

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

columnHeader

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

lowerLeft

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

lowerRight

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

upperLeft

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

upperRight

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

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

JScrollPane

public JScrollPane(Component view, int vsbPolicy, int hsbPolicy)
Создаёт JScrollPane, который отображает компонент view в viewport, положение которого можно контролировать с помощью пары полос прокрутки. Политики полос прокрутки определяют, когда отображаются полосы прокрутки. Например, если vsbPolicy имеет значение VERTICAL_SCROLLBAR_AS_NEEDED, то вертикальная полоса прокрутки появляется только в том случае, если содержимое view не помещается по вертикали. Доступные параметры политики перечислены в setVerticalScrollBarPolicy(int) и setHorizontalScrollBarPolicy(int).
Параметры:
view - компонент для отображения в viewport JScrollPane
vsbPolicy - целое число, определяющее политику вертикальной полосы прокрутки
hsbPolicy - целое число, определяющее политику горизонтальной полосы прокрутки
См. также:
  • setViewportView(java.awt.Component)

JScrollPane

public JScrollPane(Component view)
Создаёт JScrollPane, который отображает содержимое указанного компонента, где обе горизонтальная и вертикальная полосы прокрутки появляются всякий раз, когда содержимое компонента больше, чем область просмотра.
Параметры:
view - компонент для отображения в viewport JScrollPane
См. также:
  • setViewportView(java.awt.Component)

JScrollPane

public JScrollPane(int vsbPolicy, int hsbPolicy)
Создаёт пустой (без viewport view) JScrollPane со заданными политиками полос прокрутки. Доступные параметры политики перечислены в setVerticalScrollBarPolicy(int) и setHorizontalScrollBarPolicy(int).
Параметры:
vsbPolicy - целое число, определяющее политику вертикальной полосы прокрутки
hsbPolicy - целое число, определяющее политику горизонтальной полосы прокрутки
См. также:
  • setViewportView(java.awt.Component)

JScrollPane

public JScrollPane()
Создаёт пустой (без viewport view) JScrollPane, где обе горизонтальная и вертикальная полосы прокрутки появляются при необходимости.

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

getUI

@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component's LookAndFeel.") public ScrollPaneUI getUI()
Возвращает объект темы отображения (L&F), который отображает этот компонент.
Переопределяет:
getUI в классе JComponent
Возвращает:
объект темы отображения (L&F), который отображает этот компонент
См. также:
  • setUI(javax.swing.plaf.ScrollPaneUI)

setUI

public void setUI(ScrollPaneUI ui)
Устанавливает объект темы отображения (L&F), который предоставляет тему отображения (L&F) для этого компонента.
Параметры:
ui - объект темы отображения (L&F)
См. также:
  • getUI()

updateUI

public void updateUI()
Заменяет текущий объект темы отображения (L&F) версией из текущей темы отображения по умолчанию. Вызывается при изменении темы отображения по умолчанию.
Переопределяет:
updateUI в классе JComponent
См. также:
  • JComponent.updateUI()
  • UIManager.getUI(javax.swing.JComponent)

getUIClassID

@BeanProperty(bound=false, hidden=true) public String getUIClassID()
Возвращает суффикс, используемый для построения имени класса темы отображения (L&F), используемого для отображения этого компонента.
Переопределяет:
getUIClassID в классе JComponent
Возвращает:
строку "ScrollPaneUI"
См. также:
  • JComponent.getUIClassID()
  • UIDefaults.getUI(javax.swing.JComponent)

setLayout

public void setLayout(LayoutManager layout)
Устанавливает менеджер компоновки для этого JScrollPane. Этот метод переопределяет setLayout в java.awt.Container, чтобы гарантировать, что только менеджеры компоновки, которые являются подклассами ScrollPaneLayout, могут использоваться в JScrollPane. Если layout не null, это вызовет syncWithScrollPane на нём.
Переопределяет:
setLayout в классе Container
Параметры:
layout - указанный менеджер компоновки
Исключения:
ClassCastException - если менеджер компоновки не является подклассом ScrollPaneLayout
См. также:
  • Container.getLayout()
  • Container.setLayout(java.awt.LayoutManager)

isValidateRoot

@BeanProperty(hidden=true) public boolean isValidateRoot()
Переопределено для возвращения true, чтобы любые вызовы revalidate для любых потомков этого JScrollPane приводили к валидации всего дерева, начиная с этого JScrollPane.
Overrides:
isValidateRoot в классе JComponent
Returns:
true
See Also:
  • Container.validate()
  • JComponent.revalidate()
  • JComponent.isValidateRoot()
  • Container.isValidateRoot()

getVerticalScrollBarPolicy

public int getVerticalScrollBarPolicy()
Возвращает значение политики вертикальной полосы прокрутки.
Returns:
свойство verticalScrollBarPolicy
See Also:
  • setVerticalScrollBarPolicy(int)

setVerticalScrollBarPolicy

@BeanProperty(preferred=true, enumerationValues={"ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED","ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER","ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS"}, description="The scrollpane vertical scrollbar policy") public void setVerticalScrollBarPolicy(int policy)
Определяет, когда появляется вертикальная полоса прокрутки в области прокрутки. Допустимые значения:
  • ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED
  • ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER
  • ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS
Parameters:
policy - одно из трёх значений, указанных выше
Throws:
IllegalArgumentException - если policy не является одним из допустимых значений, показанных выше
See Also:
  • getVerticalScrollBarPolicy()

getHorizontalScrollBarPolicy

public int getHorizontalScrollBarPolicy()
Возвращает значение политики горизонтальной полосы прокрутки.
Returns:
свойство horizontalScrollBarPolicy
See Also:
  • setHorizontalScrollBarPolicy(int)

setHorizontalScrollBarPolicy

@BeanProperty(preferred=true, enumerationValues={"ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED","ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER","ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS"}, description="The scrollpane scrollbar policy") public void setHorizontalScrollBarPolicy(int policy)
Определяет, когда появляется горизонтальная полоса прокрутки в области прокрутки. Варианты:
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
  • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS
Parameters:
policy - одно из трёх значений, указанных выше
Throws:
IllegalArgumentException - если policy не является одним из допустимых значений, показанных выше
See Also:
  • getHorizontalScrollBarPolicy()

getViewportBorder

public Border getViewportBorder()
Возвращает объект Border, окружающий область прокрутки.
Returns:
свойство viewportBorder
See Also:
  • setViewportBorder(javax.swing.border.Border)

setViewportBorder

@BeanProperty(preferred=true, description="The border around the viewport.") public void setViewportBorder(Border viewportBorder)
Добавляет рамку вокруг области прокрутки. Обратите внимание, что рамка не устанавливается непосредственно на области прокрутки, JViewport не поддерживает свойство рамки JComponent. Аналогично, установка рамки для области прокрутки JScrollPane не влияет на свойство viewportBorder.

Значение по умолчанию этого свойства вычисляется реализацией внешнего вида.

Parameters:
viewportBorder - добавляемая рамка
See Also:
  • getViewportBorder()
  • setViewport(javax.swing.JViewport)

getViewportBorderBounds

@BeanProperty(bound=false) public Rectangle getViewportBorderBounds()
Возвращает границы рамки области прокрутки.
Returns:
объект Rectangle, определяющий рамку области прокрутки

createHorizontalScrollBar

public JScrollBar createHorizontalScrollBar()
Возвращает JScrollPane.ScrollBar по умолчанию. Подклассы могут переопределить этот метод, чтобы заставить реализацию ScrollPaneUI использовать подкласс JScrollBar. Используется реализациями ScrollPaneUI для создания горизонтальной полосы прокрутки.
Returns:
JScrollBar с горизонтальной ориентацией
See Also:
  • JScrollBar

getHorizontalScrollBar

public JScrollBar getHorizontalScrollBar()
Возвращает горизонтальную полосу прокрутки, которая управляет положением горизонтального просмотра области прокрутки.
Returns:
свойство horizontalScrollBar
See Also:
  • setHorizontalScrollBar(javax.swing.JScrollBar)

setHorizontalScrollBar

@BeanProperty(expert=true, description="The horizontal scrollbar.") public void setHorizontalScrollBar(JScrollBar horizontalScrollBar)
Добавляет полосу прокрутки, которая управляет положением горизонтального просмотра области прокрутки в область прокрутки. Обычно это не требуется, так как JScrollPane создаёт горизонтальные и вертикальные полосы прокрутки по умолчанию.
Parameters:
horizontalScrollBar - добавляемая горизонтальная полоса прокрутки
See Also:
  • createHorizontalScrollBar()
  • getHorizontalScrollBar()

createVerticalScrollBar

public JScrollBar createVerticalScrollBar()
Возвращает JScrollPane.ScrollBar по умолчанию. Подклассы могут переопределить этот метод, чтобы заставить реализацию ScrollPaneUI использовать подкласс JScrollBar. Используется реализациями ScrollPaneUI для создания вертикальной полосы прокрутки.
Returns:
JScrollBar с вертикальной ориентацией
See Also:
  • JScrollBar

getVerticalScrollBar

public JScrollBar getVerticalScrollBar()
Возвращает вертикальную полосу прокрутки, которая управляет положением вертикального просмотра области прокрутки.
Returns:
свойство verticalScrollBar
See Also:
  • setVerticalScrollBar(javax.swing.JScrollBar)

setVerticalScrollBar

@BeanProperty(expert=true, description="The vertical scrollbar.") public void setVerticalScrollBar(JScrollBar verticalScrollBar)
Добавляет полосу прокрутки, которая управляет положением вертикального просмотра области прокрутки в область прокрутки. Обычно это не требуется, так как JScrollPane создаёт вертикальные и горизонтальные полосы прокрутки по умолчанию.
Parameters:
verticalScrollBar - новая вертикальная полоса прокрутки
See Also:
  • createVerticalScrollBar()
  • getVerticalScrollBar()

createViewport

protected JViewport createViewport()
Возвращает новый JViewport по умолчанию. Используется для создания области прокрутки (при необходимости) в setViewportView, setRowHeaderView и setColumnHeaderView. Подклассы могут переопределить этот метод для возврата подкласса JViewport.
Returns:
новый JViewport

getViewport

public JViewport getViewport()
Возвращает текущую JViewport.
Returns:
свойство viewport
See Also:
  • setViewport(javax.swing.JViewport)

setViewport

@BeanProperty(expert=true, visualUpdate=true, description="The viewport child for this scrollpane") public void setViewport(JViewport viewport)
Удаляет старую область прокрутки (если она есть); принудительно устанавливает viewPosition новой области прокрутки в квадранте +x,+y; синхронизирует заголовки строк и столбцов (если они есть) с новой областью прокрутки; и, наконец, синхронизирует полосы прокрутки и заголовки с новой областью прокрутки.

Большинству приложений будет удобнее использовать setViewportView для добавления области прокрутки и элемента просмотра в область прокрутки.

Parameters:
viewport - новая область прокрутки; если viewport является null, старая область прокрутки всё равно удаляется, а новая область прокрутки устанавливается в null
See Also:
  • createViewport()
  • getViewport()
  • setViewportView(java.awt.Component)

setViewportView

public void setViewportView(Component view)
Создаёт область просмотра (viewport) при необходимости и затем устанавливает её представление. Приложения, которые не предоставляют представление напрямую конструктору JScrollPane, должны использовать этот метод для указания прокручиваемого дочернего элемента, который будет отображаться в области прокрутки. Например:
 JScrollPane scrollpane = new JScrollPane();
 scrollpane.setViewportView(myBigComponentToScroll);
 
Приложения не должны добавлять дочерние элементы непосредственно в область прокрутки.
Параметры:
view - компонент для добавления в область просмотра
См. также:
  • setViewport(javax.swing.JViewport)
  • JViewport.setView(java.awt.Component)

getRowHeader

public JViewport getRowHeader()
Возвращает заголовок строки.
Возвращает:
свойство rowHeader
См. также:
  • setRowHeader(javax.swing.JViewport)

setRowHeader

@BeanProperty(expert=true, description="The row header child for this scrollpane") public void setRowHeader(JViewport rowHeader)
Удаляет старый заголовок строки, если он существует; если новый заголовок строки не null, синхронизирует координату y его положения просмотра с областью просмотра (если она есть), а затем добавляет его в область прокрутки.

Большинству приложений будет удобнее использовать setRowHeaderView для добавления компонента заголовка строки и его области просмотра в область прокрутки.

Параметры:
rowHeader - новый заголовок строки для использования; если null, старый заголовок строки всё равно удаляется, и новый заголовок строки устанавливается в null
См. также:
  • getRowHeader()
  • setRowHeaderView(java.awt.Component)

setRowHeaderView

public void setRowHeaderView(Component view)
Создаёт область просмотра заголовка строки при необходимости, устанавливает её представление, а затем добавляет область просмотра заголовка строки в область прокрутки. Например:
 JScrollPane scrollpane = new JScrollPane();
 scrollpane.setViewportView(myBigComponentToScroll);
 scrollpane.setRowHeaderView(myBigComponentsRowHeader);
 
Параметры:
view - компонент для отображения в качестве заголовка строки
См. также:
  • setRowHeader(javax.swing.JViewport)
  • JViewport.setView(java.awt.Component)

getColumnHeader

public JViewport getColumnHeader()
Возвращает заголовок столбца.
Возвращает:
свойство columnHeader
См. также:
  • setColumnHeader(javax.swing.JViewport)

setColumnHeader

@BeanProperty(visualUpdate=true, description="The column header child for this scrollpane") public void setColumnHeader(JViewport columnHeader)
Удаляет старый заголовок столбца, если он существует; если новый заголовок столбца не null, синхронизирует координату x его положения просмотра с областью просмотра (если она есть), а затем добавляет его в область прокрутки.

Большинству приложений будет удобнее использовать setColumnHeaderView для добавления компонента заголовка столбца и его области просмотра в область прокрутки.

Параметры:
columnHeader - JViewport, который является новым заголовком столбца
См. также:
  • getColumnHeader()
  • setColumnHeaderView(java.awt.Component)

setColumnHeaderView

public void setColumnHeaderView(Component view)
Создаёт область просмотра заголовка столбца при необходимости, устанавливает её представление, а затем добавляет область просмотра заголовка столбца в область прокрутки. Например:
 JScrollPane scrollpane = new JScrollPane();
 scrollpane.setViewportView(myBigComponentToScroll);
 scrollpane.setColumnHeaderView(myBigComponentsColumnHeader);
 
Параметры:
view - компонент для отображения в качестве заголовка столбца
См. также:
  • setColumnHeader(javax.swing.JViewport)
  • JViewport.setView(java.awt.Component)

getCorner

public Component getCorner(String key)
Возвращает компонент в указанном углу. Значение key, определяющее угол, является одним из следующих:
  • ScrollPaneConstants.LOWER_LEFT_CORNER
  • ScrollPaneConstants.LOWER_RIGHT_CORNER
  • ScrollPaneConstants.UPPER_LEFT_CORNER
  • ScrollPaneConstants.UPPER_RIGHT_CORNER
  • ScrollPaneConstants.LOWER_LEADING_CORNER
  • ScrollPaneConstants.LOWER_TRAILING_CORNER
  • ScrollPaneConstants.UPPER_LEADING_CORNER
  • ScrollPaneConstants.UPPER_TRAILING_CORNER
Параметры:
key - одно из значений, как показано выше
Возвращает:
компонент угла (который может быть null) , идентифицируемый заданным ключом, или null, если ключ некорректен
См. также:
  • setCorner(java.lang.String, java.awt.Component)

setCorner

public void setCorner(String key, Component corner)
Добавляет дочерний элемент, который будет отображаться в одном из углов области прокрутки, если есть место. Например, при отображении обеих полос прокрутки (справа и снизу области прокрутки) компонент нижнего левого угла будет отображаться в пространстве между концами двух полос прокрутки. Допустимые значения для ключа:
  • ScrollPaneConstants.LOWER_LEFT_CORNER
  • ScrollPaneConstants.LOWER_RIGHT_CORNER
  • ScrollPaneConstants.UPPER_LEFT_CORNER
  • ScrollPaneConstants.UPPER_RIGHT_CORNER
  • ScrollPaneConstants.LOWER_LEADING_CORNER
  • ScrollPaneConstants.LOWER_TRAILING_CORNER
  • ScrollPaneConstants.UPPER_LEADING_CORNER
  • ScrollPaneConstants.UPPER_TRAILING_CORNER

Хотя «угол» не соответствует никакому значению свойства beans, события PropertyChange генерируются со значением свойства, установленным в ключ угла.

Параметры:
key - определяет, в какой угол будет отображаться компонент
corner - один из следующих компонентов:
  • нижний левый
  • нижний правый
  • верхний левый
  • верхний правый
Исключения:
IllegalArgumentException - если ключ угла некорректен

setComponentOrientation

public void setComponentOrientation(ComponentOrientation co)
Устанавливает ориентацию вертикальной и горизонтальной полос прокрутки, определяемую аргументом ComponentOrientation.
Переопределяет:
setComponentOrientation в классе Component
Параметры:
co - одно из следующих значений:
  • java.awt.ComponentOrientation.LEFT_TO_RIGHT
  • java.awt.ComponentOrientation.RIGHT_TO_LEFT
  • java.awt.ComponentOrientation.UNKNOWN
См. также:
  • ComponentOrientation

isWheelScrollingEnabled

@BeanProperty(description="Flag for enabling/disabling mouse wheel scrolling") public boolean isWheelScrollingEnabled()
Указывает, будет ли происходить прокрутка при вращении колёсика мыши. Прокрутка колёсиком мыши включена по умолчанию.
Возвращает:
true, если прокрутка колёсиком мыши включена, false в противном случае
С:
1.4
См. также:
  • setWheelScrollingEnabled(boolean)

setWheelScrollingEnabled

@BeanProperty(description="Flag for enabling/disabling mouse wheel scrolling") public void setWheelScrollingEnabled(boolean handleWheel)
Включает/выключает прокрутку при перемещении колёсика мыши. Прокрутка колёсиком мыши включена по умолчанию.
Параметры:
handleWheel - true, если прокрутка должна выполняться автоматически для события MouseWheelEvent, false в противном случае.
С:
1.4
См. также:
  • isWheelScrollingEnabled()
  • MouseWheelEvent
  • MouseWheelListener

paramString

protected String paramString()
Возвращает строковое представление этого JScrollPane. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться между реализациями. Возвращаемая строка может быть пустой, но не null.
Переопределяет:
paramString в классе JComponent
Возвращает:
строковое представление этого JScrollPane.

getAccessibleContext

@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JScrollPane. Для областей прокрутки AccessibleContext представлен в виде AccessibleJScrollPane. Новый экземпляр AccessibleJScrollPane создаётся при необходимости.
Указано в:
getAccessibleContext в интерфейсе Accessible
Переопределяет:
getAccessibleContext в классе Component
Возвращает:
AccessibleJScrollPane, который служит AccessibleContext для этого JScrollPane

© 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/JScrollPane.html

Spec-Zone.ru

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