Класс 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

Предоставляет прокручиваемый вид лёгкого компонента. A 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.

C тех пор как:
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 с областью просмотра (если она есть), а затем добавляет его в прокручиваемый список.

void setColumnHeaderView​(Component view)

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

void setComponentOrientation​(ComponentOrientation co)

Устанавливает ориентацию для вертикальных и горизонтальных полос прокрутки, как определено аргументом ComponentOrientation.

void setCorner​(String key, Component corner)

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

void setHorizontalScrollBar​(JScrollBar horizontalScrollBar)

Добавляет полосу прокрутки, которая управляет положением горизонтального просмотра области просмотра, в прокручиваемый список.

void setHorizontalScrollBarPolicy​(int policy)

Определяет, когда горизонтальная полоса прокрутки появляется в прокручиваемом списке.

void setLayout​(LayoutManager layout)

Устанавливает менеджер компоновки для этого JScrollPane.

void setRowHeader​(JViewport rowHeader)

Удаляет старый rowHeader, если он существует; если новый rowHeader не null, синхронизирует координату y его viewPosition с областью просмотра (если она есть), а затем добавляет его в прокручиваемый список.

void setRowHeaderView​(Component view)

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

void setUI​(ScrollPaneUI ui)

Устанавливает объект ScrollPaneUI, который обеспечивает отображение (L&F) для этого компонента.

void setVerticalScrollBar​(JScrollBar verticalScrollBar)

Добавляет полосу прокрутки, которая управляет положением вертикального просмотра области просмотра, в прокручиваемый список.

void setVerticalScrollBarPolicy​(int policy)

Определяет, когда вертикальная полоса прокрутки появляется в прокручиваемом списке.

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, 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, hide, 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

Дочерний элемент области просмотра 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, который отображает компонент просмотра в области просмотра, положение которого можно контролировать с помощью пары полос прокрутки. Политики полос прокрутки определяют, когда отображаются полосы прокрутки. Например, если vsbPolicy равно VERTICAL_SCROLLBAR_AS_NEEDED , то вертикальная полоса прокрутки появляется только тогда, когда содержимое не помещается по вертикали. Доступные настройки политик перечислены в setVerticalScrollBarPolicy(int) и setHorizontalScrollBarPolicy(int).

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

JScrollPane

public JScrollPane(Component view)

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

Параметры:
view - компонент для отображения в области просмотра JScrollPane
См. также:
setViewportView(java.awt.Component)

JScrollPane

public JScrollPane(int vsbPolicy,
                   int hsbPolicy)

Создает пустой (без области просмотра) JScrollPane со специфицированными политиками полос прокрутки. Доступные настройки политик перечислены в setVerticalScrollBarPolicy(int) и setHorizontalScrollBarPolicy(int).

Параметры:
vsbPolicy - целое число, определяющее политику вертикальной полосы прокрутки
hsbPolicy - целое число, определяющее политику горизонтальной полосы прокрутки
См. также:
setViewportView(java.awt.Component)

JScrollPane

public JScrollPane()

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

Методы

getUI

@BeanProperty(hidden=true,
              visualUpdate=true,
              description="The UI object that implements the Component\'s LookAndFeel.")
public ScrollPaneUI getUI()

Возвращает объект внешнего вида (L&F), который отображает этот компонент.

Переопределяет:
getUI в классе JComponent
Возвращает:
объект ScrollPaneUI, который отображает этот компонент
См. также:
setUI(javax.swing.plaf.ScrollPaneUI)

setUI

public void setUI(ScrollPaneUI ui)

Устанавливает объект ScrollPaneUI, который обеспечивает внешний вид (L&F) для этого компонента.

Параметры:
ui - объект ScrollPaneUI L&F
См. также:
getUI()

updateUI

public void updateUI()

Заменяет текущий объект ScrollPaneUI на версию из текущего внешнего вида по умолчанию. Должно вызываться при изменении внешнего вида по умолчанию.

Переопределяет:
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, чтобы гарантировать, что только LayoutManager, являющиеся подклассами ScrollPaneLayout, могут использоваться в JScrollPane. Если layout не равно null, это вызовет syncWithScrollPane на нем.

Переопределяет:
setLayout в классе Container
Параметры:
layout - указанный менеджер компоновки
Исключения:
ClassCastException - если layout не является ScrollPaneLayout
См. также:
Container.getLayout(), Container.setLayout(java.awt.LayoutManager)

isValidateRoot

@BeanProperty(hidden=true)
public boolean isValidateRoot()

Переопределено для возврата true, так что любые вызовы revalidate для любых потомков этого JScrollPane приведут к валидации всего дерева, начиная с этого JScrollPane.

Переопределяет:
isValidateRoot в классе JComponent
Возвращает:
true
См. также:
Container.validate(), JComponent.revalidate(), JComponent.isValidateRoot(), Container.isValidateRoot()

getVerticalScrollBarPolicy

public int getVerticalScrollBarPolicy()

Возвращает значение политики вертикальной полосы прокрутки.

Возвращает:
свойство verticalScrollBarPolicy
См. также:
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

Параметры:
policy - одно из трех значений, перечисленных выше
Исключения:
IllegalArgumentException - если policy не является одним из допустимых значений, показанных выше
См. также:
getVerticalScrollBarPolicy()

getHorizontalScrollBarPolicy

public int getHorizontalScrollBarPolicy()

Возвращает значение политики горизонтальной полосы прокрутки.

Возвращает:
свойство horizontalScrollBarPolicy
См. также:
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

Параметры:
policy - одно из трех значений, перечисленных выше
Исключения:
IllegalArgumentException - если policy не является одним из допустимых значений, показанных выше
См. также:
getHorizontalScrollBarPolicy()

getViewportBorder

public Border getViewportBorder()

Возвращает объект Border, который окружает область просмотра.

Возвращает:
свойство viewportBorder
См. также:
setViewportBorder(javax.swing.border.Border)

setViewportBorder

@BeanProperty(preferred=true,
              description="The border around the viewport.")
public void setViewportBorder(Border viewportBorder)

Добавляет границу вокруг области просмотра. Обратите внимание, что граница не устанавливается непосредственно на области просмотра, JViewport не поддерживает свойство границы JComponent. Аналогично, установка области просмотра JScrollPane не влияет на свойство viewportBorder.

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

Параметры:
viewportBorder - граница, которая должна быть добавлена
См. также:
getViewportBorder(), setViewport(javax.swing.JViewport)

getViewportBorderBounds

@BeanProperty(bound=false)
public Rectangle getViewportBorderBounds()

Возвращает границы границы области просмотра.

Возвращает:
объект Rectangle, указывающий границу области просмотра

createHorizontalScrollBar

public JScrollBar createHorizontalScrollBar()

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

Возвращает:
JScrollBar с горизонтальной ориентацией
См. также:
JScrollBar

getHorizontalScrollBar

public JScrollBar getHorizontalScrollBar()

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

Возвращает:
свойство horizontalScrollBar
См. также:
setHorizontalScrollBar(javax.swing.JScrollBar)

setHorizontalScrollBar

@BeanProperty(expert=true,
              description="The horizontal scrollbar.")
public void setHorizontalScrollBar(JScrollBar horizontalScrollBar)

Добавляет полосу прокрутки, которая управляет горизонтальным положением вида области просмотра, в окно прокрутки. Это обычно не нужно, так как JScrollPane создает горизонтальные и вертикальные полосы прокрутки по умолчанию.

Параметры:
horizontalScrollBar - горизонтальная полоса прокрутки, которая должна быть добавлена
См. также:
createHorizontalScrollBar(), getHorizontalScrollBar()

createVerticalScrollBar

public JScrollBar createVerticalScrollBar()

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

Возвращает:
JScrollBar с вертикальной ориентацией
См. также:
JScrollBar

getVerticalScrollBar

public JScrollBar getVerticalScrollBar()

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

Возвращает:
свойство verticalScrollBar
См. также:
setVerticalScrollBar(javax.swing.JScrollBar)

setVerticalScrollBar

@BeanProperty(expert=true,
              description="The vertical scrollbar.")
public void setVerticalScrollBar(JScrollBar verticalScrollBar)

Добавляет полосу прокрутки, которая управляет вертикальным положением вида области просмотра, в окно прокрутки. Это обычно не нужно, так как JScrollPane создает вертикальные и горизонтальные полосы прокрутки по умолчанию.

Параметры:
verticalScrollBar - новая вертикальная полоса прокрутки, которая должна быть добавлена
См. также:
createVerticalScrollBar(), getVerticalScrollBar()

createViewport

protected JViewport createViewport()

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

Возвращает:
новую JViewport

getViewport

public JViewport getViewport()

Возвращает текущую JViewport.

Возвращает:
свойство viewport
См. также:
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 для добавления области просмотра и представления в окно прокрутки.

Параметры:
viewport - новая область просмотра, которая будет использоваться; если viewport равен null, старая область просмотра все равно удаляется, и новая область просмотра устанавливается в null
См. также:
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)

Удаляет старый заголовок строки (rowHeader), если он существует; если новый заголовок строки не null, синхронизирует координату y его viewPosition с областью просмотра (если она есть) и затем добавляет его в область прокрутки.

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

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

setRowHeaderView

public void setRowHeaderView(Component view)

Создаёт область просмотра заголовка строки (row-header viewport) при необходимости, устанавливает её представление, а затем добавляет её в область прокрутки. Например:

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)

Удаляет старый заголовок столбца (columnHeader), если он существует; если новый заголовок столбца не null, синхронизирует координату x его viewPosition с областью просмотра (если она есть) и затем добавляет его в область прокрутки.

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

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

setColumnHeaderView

public void setColumnHeaderView(Component view)

Создаёт область просмотра заголовка столбца (column-header viewport) при необходимости, устанавливает её представление и добавляет её в область прокрутки. Например:

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

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

Параметры:
key - идентифицирует, в каком углу будет отображаться компонент
corner - один из следующих компонентов:
  • lowerLeft
  • lowerRight
  • upperLeft
  • upperRight
Исключения:
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()

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

Переопределяет:
paramString в классе JComponent
Возвращает:
строковое представление этого объекта.

getAccessibleContext

@BeanProperty(bound=false)
public AccessibleContext getAccessibleContext()

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

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

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/JScrollPane.html

Spec-Zone .ru
спецификации, руководства, описания, API