Класс 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 Предоставляет прокручиваемый вид лёгкого компонента. A JScrollPane управляет областью просмотра, необязательными вертикальной и горизонтальной полосами прокрутки и необязательными заголовками строк и столбцов. Документацию по JScrollPane можно найти в Руководстве по использованию панелей прокрутки, разделе в Java Tutorial. Обратите внимание, что JScrollPane не поддерживает тяжёлые компоненты.
|
|
JViewport предоставляет окно, или "область просмотра", к источнику данных — например, текстовому файлу. Этот источник данных является "прокручиваемым клиентом" (также известным как модель данных), отображаемым в представлении JViewport. JScrollPane в основном состоит из JScrollBar, JViewport, и соединения между ними, как показано на диаграмме справа.
Помимо полос прокрутки и области просмотра, JScrollPane может иметь заголовок столбца и заголовок строки. Каждый из них является объектом JViewport, который вы указываете с помощью setRowHeaderView, и setColumnHeaderView. Область просмотра заголовка столбца автоматически прокручивается влево и вправо, отслеживая прокрутку влево-вправо основной области просмотра. (Однако, она никогда не прокручивается вертикально.) Заголовок строки действует аналогичным образом.
В месте пересечения двух полос прокрутки, заголовок строки встречается с заголовком столбца, или полоса прокрутки встречается с одним из заголовков, оба компонента останавливаются перед углом, оставляя прямоугольное пространство, которое по умолчанию пустое. Эти пространства могут потенциально существовать в любом количестве из четырёх углов. На предыдущей диаграмме верхнее правое пространство присутствует и идентифицируется меткой "угловой компонент".
Любое количество этих пустых пространств может быть заменено с помощью метода setCorner для добавления компонента в определённый угол. (Примечание: Один и тот же компонент нельзя добавить в несколько углов.) Это полезно, если вам нужно добавить дополнительное оформление или функциональность к панели прокрутки. Размер каждого углового компонента полностью определяется размером заголовков и/или полос прокрутки, которые его окружают.
Угловой компонент будет виден только в том случае, если в этом углу есть свободное пространство для его существования. Например, рассмотрите компонент, установленный в верхнем правом углу панели прокрутки со заголовком столбца. Если вертикальная полоса прокрутки панели прокрутки отсутствует, возможно, потому что компонент просмотра не достаточно вырос, чтобы её потребовать, то угловой компонент не будет показан (поскольку в этом углу нет пустого места, созданного пересечением заголовка и вертикальной полосы прокрутки). Принудительное отображение полосы прокрутки всегда, используя setVerticalScrollBarPolicy(VERTICAL_SCROLLBAR_ALWAYS), гарантирует, что место для углового компонента всегда будет.
Чтобы добавить рамку вокруг основной области просмотра, вы можете использовать setViewportBorder. (Конечно, вы также можете добавить рамку вокруг всей панели прокрутки, используя setBorder.)
Частая операция — установка цвета фона, который будет использоваться, если область просмотра содержимого меньше области просмотра или не является непрозрачной. Это можно сделать, установив цвет фона области просмотра с помощью scrollPane.getViewport().setBackground(). Причина, по которой устанавливается цвет области просмотра, а не панели прокрутки, заключается в том, что JViewport по умолчанию непрозрачна, что, помимо прочего, означает, что она полностью заполнит свой фон своим цветом фона. Поэтому, когда JScrollPane рисует свой фон, область просмотра обычно нарисует поверх него.
По умолчанию JScrollPane использует ScrollPaneLayout для обработки макета своих дочерних компонентов. ScrollPaneLayout определяет размер, который нужно задать области просмотра, одним из двух способов:
- Если представление реализует
Scrollable, используется комбинацияgetPreferredScrollableViewportSize,getScrollableTracksViewportWidthиgetScrollableTracksViewportHeight, в противном случае -
используется
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 | Этот класс реализует поддержку доступности для класса |
protected class | JScrollPane.ScrollBar | По умолчанию |
Вложенные классы/интерфейсы, объявленные в классе 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(int vsbPolicy,
int hsbPolicy) | Создаёт пустую (без области просмотра) |
JScrollPane(Component view) | Создаёт |
JScrollPane(Component view,
int vsbPolicy,
int hsbPolicy) | Создаёт |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
JScrollBar | createHorizontalScrollBar() | Возвращает |
JScrollBar | createVerticalScrollBar() | Возвращает |
protected JViewport | createViewport() | Возвращает новый |
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() | Возвращает текущий |
Border | getViewportBorder() | Возвращает объект |
Rectangle | getViewportBorderBounds() | Возвращает границы границы области просмотра. |
boolean | isValidateRoot() | Переопределено для возврата true, так что любые вызовы |
boolean | isWheelScrollingEnabled() | Указывает, будет ли выполнена прокрутка в ответ на колесо мыши. |
protected String | paramString() | Возвращает строковое представление этого |
void | setColumnHeader(JViewport columnHeader) | Удаляет старый columnHeader, если он существует; если новый columnHeader не |
void | setColumnHeaderView(Component view) | Создает область просмотра заголовка столбца при необходимости, устанавливает ее просмотр, а затем добавляет область просмотра заголовка столбца в прокручиваемый список. |
void | setComponentOrientation(ComponentOrientation co) | Устанавливает ориентацию для вертикальных и горизонтальных полос прокрутки, как определено аргументом |
void | setCorner(String key,
Component corner) | Добавляет дочерний элемент, который будет отображаться в одном из углов прокручиваемых списков, если есть место. |
void | setHorizontalScrollBar(JScrollBar horizontalScrollBar) | Добавляет полосу прокрутки, которая управляет положением горизонтального просмотра области просмотра, в прокручиваемый список. |
void | setHorizontalScrollBarPolicy(int policy) | Определяет, когда горизонтальная полоса прокрутки появляется в прокручиваемом списке. |
void | setLayout(LayoutManager layout) | Устанавливает менеджер компоновки для этого |
void | setRowHeader(JViewport rowHeader) | Удаляет старый rowHeader, если он существует; если новый rowHeader не |
void | setRowHeaderView(Component view) | Создает область просмотра заголовка строки, если необходимо, устанавливает ее представление и затем добавляет область просмотра заголовка строки в прокручиваемый список. |
void | setUI(ScrollPaneUI ui) | Устанавливает объект |
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() | Заменяет текущий объект |
Методы, объявленные в классе 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.
rowHeader
protected JViewport rowHeader
Дочерний элемент заголовка строк. По умолчанию null.
- См. также:
setRowHeader(javax.swing.JViewport)
columnHeader
protected JViewport columnHeader
Дочерний элемент заголовка столбцов. По умолчанию null.
- См. также:
setColumnHeader(javax.swing.JViewport)
lowerLeft
protected Component lowerLeft
Компонент для отображения в нижнем левом углу. По умолчанию null.
lowerRight
protected Component lowerRight
Компонент для отображения в нижнем правом углу. По умолчанию null.
upperLeft
protected Component upperLeft
Компонент для отображения в верхнем левом углу. По умолчанию null.
upperRight
protected Component upperRight
Компонент для отображения в верхнем правом углу. По умолчанию null.
Конструкторы
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- объектScrollPaneUIL&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