Класс JViewport
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JViewport
- Все реализованные интерфейсы:
- ImageObserver, MenuContainer, Serializable, Accessible
public class JViewport extends JComponent implements Accessible
«Область просмотра» или «иллюминатор», через который вы видите основную информацию. При прокрутке перемещается именно область просмотра. Это как смотреть через видоискатель камеры. Перемещение видоискателя вверх выводит новые элементы в верхней части изображения и скрывает элементы в нижней части.
По умолчанию, JViewport непрозрачна. Чтобы изменить это, используйте метод setOpaque.
ПРИМЕЧАНИЕ:Мы реализовали более быстрый алгоритм прокрутки, который не требует буфера для рисования. Алгоритм работает следующим образом:
- Проверяется, являются ли просматриваемое и родительское просматриваемое элементы
JComponents, если нет, останавливается и перерисовывается вся область просмотра. - Если область просмотра скрыта предком, останавливается и перерисовывается вся область просмотра.
- Вычисляется область, которая станет видимой. Если она такая же большая, как область просмотра, останавливается и перерисовывается вся область просмотра.
- Получаются графические ресурсы предка
Window, и выполняетсяcopyAreaв области прокрутки. - Отправляется сообщение просматриваемому элементу о перерисовке новой видимой области.
- При следующем вызове paint для области просмотра, если область обрезки меньше размера области просмотра, запускается таймер для перерисовки всей области.
copyArea. По сравнению с вариантом без буфера, этот подход значительно уменьшит перерисовываемую область. Этот подход может привести к более медленной работе, чем подход с буфером, когда область просмотра скрыта другой вкладкой или частично за пределами экрана. Когда другая вкладка скрывает область просмотра, copyArea скопирует мусор, и система сгенерирует событие paint, чтобы сообщить нам, что нужно перерисовать вновь появившуюся область. Единственный способ справиться с этим — перерисовать всю область просмотра, что может привести к более медленной работе, чем с буфером. В большинстве приложений пользователь очень редко будет прокручивать, когда область просмотра скрыта другой вкладкой или за пределами экрана, поэтому эта оптимизация обычно стоит затраченных ресурсов производительности, когда она скрыта.
Предупреждение: Swing не является потокобезопасным. Дополнительная информация представлена в Политике потоков Swing.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долговременного хранения всех JavaBeans™ была добавлена в пакет java.beans. См. XMLEncoder.
- См. также:
JScrollPane
Вложенные классы
| Модификатор и тип | Класс и описание |
|---|---|
protected class |
JViewport.AccessibleJViewport Этот класс реализует поддержку доступности для класса |
protected class |
JViewport.ViewListener Прослушиватель для просматриваемого элемента. |
Вложенные классы/интерфейсы, унаследованные от класса javax.swing.JComponent
JComponent.AccessibleJComponent Вложенные классы/интерфейсы, унаследованные от класса java.awt.Container
Container.AccessibleAWTContainer Вложенные классы/интерфейсы, унаследованные от класса java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy Поля
| Модификатор и тип | Поле и описание |
|---|---|
protected boolean |
backingStore Устарело. Начиная с платформы Java 2 v1.3 |
static int |
BACKINGSTORE_SCROLL_MODE Отображает содержимое области просмотра в изображении вне экрана. |
protected Image |
backingStoreImage Изображение просматриваемого элемента, используемое для буфера. |
static int |
BLIT_SCROLL_MODE Используйте |
protected boolean |
isViewSizeSet Истина, когда размеры области просмотра определены. |
protected Point |
lastPaintPosition Последний |
protected boolean |
scrollUnderway Флаг |
static int |
SIMPLE_SCROLL_MODE Этот режим использует очень простой метод перерисовки всего содержимого полосы прокрутки каждый раз при прокрутке. |
Поля, унаследованные от класса 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 Конструкторы
| Конструктор и описание |
|---|
JViewport() Создаёт |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
addChangeListener(ChangeListener l) Добавляет |
protected void |
addImpl(Component child,
Object constraints,
int index) Устанавливает единственного лёгкого дочернего элемента |
protected boolean |
computeBlit(int dx,
int dy,
Point blitFrom,
Point blitTo,
Dimension blitSize,
Rectangle blitPaint) Вычисляет параметры для blit, где изображение буфера в настоящее время содержит |
protected LayoutManager |
createLayoutManager() Подклассы могут переопределить это для установки другого менеджера компоновки (или |
protected JViewport.ViewListener |
createViewListener() Создаёт слушатель для представления. |
protected void |
firePropertyChange(String propertyName,
Object oldValue,
Object newValue) Уведомляет слушателей об изменении свойства. |
protected void |
fireStateChanged() Уведомляет всех |
AccessibleContext |
getAccessibleContext() Получает AccessibleContext, связанный с этим JViewport. |
ChangeListener[] |
getChangeListeners() Возвращает массив всех |
Dimension |
getExtentSize() Возвращает размер видимой части представления в координатах представления. |
Insets |
getInsets() Возвращает размеры отступов (рамки) как (0,0,0,0), так как рамки не поддерживаются на |
Insets |
getInsets(Insets insets) Возвращает |
int |
getScrollMode() Возвращает текущий режим прокрутки. |
ViewportUI |
getUI() Возвращает объект L&F, который отображает этот компонент. |
String |
getUIClassID() Возвращает строку, которая указывает имя класса L&F, который отображает этот компонент. |
Component |
getView() Возвращает единственного лёгкого дочернего элемента |
Point |
getViewPosition() Возвращает координаты представления, которые отображаются в верхнем левом углу области просмотра, или 0,0, если представление отсутствует. |
Rectangle |
getViewRect() Возвращает прямоугольник, начало которого |
Dimension |
getViewSize() Если размер представления не был явно задан, возвращает предпочтительный размер, иначе возвращает текущий размер представления. |
boolean |
isBackingStoreEnabled() Устарело. С платформы Java 2 v1.3 заменено на |
boolean |
isOptimizedDrawingEnabled()
|
protected boolean |
isPaintingOrigin() Возвращает true, если режим прокрутки - |
void |
paint(Graphics g) В зависимости от того, включён ли |
protected String |
paramString() Возвращает строковое представление этого |
void |
remove(Component child) Удаляет единственного лёгкого дочернего элемента |
void |
removeChangeListener(ChangeListener l) Удаляет |
void |
repaint(long tm,
int x,
int y,
int w,
int h) Всегда перерисовывайте в системе координат родителя, чтобы убедиться, что |
void |
reshape(int x,
int y,
int w,
int h) Устанавливает границы этой области просмотра. |
void |
scrollRectToVisible(Rectangle contentRect) Прокручивает представление таким образом, чтобы |
void |
setBackingStoreEnabled(boolean enabled) Устарело. С платформы Java 2 v1.3 заменено на |
void |
setBorder(Border border) Область просмотра "прокручивает" свой дочерний элемент (называемый "представлением") с помощью обычного обрезки родитель/дочерний (обычно представление перемещается в противоположном направлении прокрутки). |
void |
setExtentSize(Dimension newExtent) Устанавливает размер видимой части представления, используя координаты представления. |
void |
setScrollMode(int mode) Используется для управления методом прокрутки содержимого области просмотра. |
void |
setUI(ViewportUI ui) Устанавливает объект L&F, который отображает этот компонент. |
void |
setView(Component view) Устанавливает единственного лёгкого дочернего элемента |
void |
setViewPosition(Point p) Устанавливает координаты представления, которые отображаются в верхнем левом углу области просмотра, не делает ничего, если представление отсутствует. |
void |
setViewSize(Dimension newSize) Устанавливает размер представления. |
Dimension |
toViewCoordinates(Dimension size) Преобразует размер в пиксельных координатах в координаты представления. |
Point |
toViewCoordinates(Point p) Преобразует точку в пиксельных координатах в координаты представления. |
void |
updateUI() Сбрасывает свойство пользовательского интерфейса на значение из текущей темы. |
Методы, унаследованные от класса javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, 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, 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, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, revalidate, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, 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, 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, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, 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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Поля
isViewSizeSet
protected boolean isViewSizeSet
Истинно, когда размеры области просмотра определены. По умолчанию ложно.
lastPaintPosition
protected Point lastPaintPosition
Последняя viewPosition, которую мы отрисовали, чтобы знать, какая часть изображения буфера является валидной.
backingStore
@Deprecated protected boolean backingStore
Устарело. Начиная с Java 2 платформы v1.3
Истинно, когда область просмотра поддерживает внеэкранное изображение своего содержимого, чтобы некоторые прокрутки могли происходить с помощью быстрых операций "bit-blit", вместо доступа к объекту представления для построения отображения. По умолчанию false.
- См. также:
setScrollMode(int)
backingStoreImage
protected transient Image backingStoreImage
Изображение представления, используемое для буфера.
scrollUnderway
protected boolean scrollUnderway
Флаг scrollUnderway используется для компонентов, таких как JList. Когда нажата стрелка вниз на JList и выбранная ячейка — последняя в списке, область просмотра автоматически прокручивается. Здесь старая выбранная ячейка должна быть перерисована, и поэтому нам нужен флаг, чтобы заставить область просмотра выполнять оптимизированную отрисовку только при явном вызове setViewPosition(Point). Когда setBounds вызывается через другие пути, флаг выключен, и представление перерисовывается обычно. Другой подход заключался бы в удалении этого из класса JViewport и предоставлении возможности классу JList управлять этим случаем, используя setBackingStoreEnabled. По умолчанию false.
BLIT_SCROLL_MODE
public static final int BLIT_SCROLL_MODE
Используйте graphics.copyArea для реализации прокрутки. Это самый быстрый способ для большинства приложений.
- С:
- 1.3
- См. также:
-
setScrollMode(int), Значения константных полей
BACKINGSTORE_SCROLL_MODE
public static final int BACKINGSTORE_SCROLL_MODE
Отображает содержимое области просмотра в внеэкранное изображение. Ранее это был режим по умолчанию для JTable. Этот режим может предоставить преимущества по сравнению с режимом "blit" в некоторых случаях, но он требует значительного дополнительного ОЗУ.
- С:
- 1.3
- См. также:
-
setScrollMode(int), Значения константных полей
SIMPLE_SCROLL_MODE
public static final int SIMPLE_SCROLL_MODE
В этом режиме используется очень простой метод перерисовки всего содержимого области прокрутки каждый раз, когда она прокручивается. Это было поведение по умолчанию в Swing 1.0 и Swing 1.1. В большинстве случаев любой из других двух вариантов обеспечит лучшую производительность.
- С:
- 1.3
- См. также:
-
setScrollMode(int), Значения константных полей
Конструкторы
JViewport
public JViewport()
Создает JViewport.
Методы
getUI
public ViewportUI getUI()
Возвращает объект L&F, который отрисовывает этот компонент.
- Возвращает:
- объект
ViewportUI - С:
- 1.3
setUI
public void setUI(ViewportUI ui)
Устанавливает объект L&F, который отрисовывает этот компонент.
- Параметры:
-
ui- объект L&FViewportUI - С:
- 1.3
- См. также:
UIDefaults.getUI(javax.swing.JComponent)
updateUI
public void updateUI()
Сбрасывает свойство UI на значение из текущего внешнего вида.
- Переопределяет:
-
updateUIв классеJComponent - См. также:
JComponent.updateUI()
getUIClassID
public String getUIClassID()
Возвращает строку, которая определяет имя класса L&F, отрисовывающего этот компонент.
- Переопределяет:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "ViewportUI"
- См. также:
-
JComponent.getUIClassID(),UIDefaults.getUI(javax.swing.JComponent)
addImpl
protected void addImpl(Component child,
Object constraints,
int index) Устанавливает единственного легкого дочернего элемента области просмотра, который может быть null. (Поскольку существует только один дочерний элемент, занимающий всю область просмотра, аргументы constraints и index игнорируются.)
- Переопределяет:
-
addImplв классеContainer - Параметры:
-
child- легкий дочерний элемент области просмотра -
constraints-constraintsдля соблюдения -
index- индекс - См. также:
setView(java.awt.Component)
remove
public void remove(Component child)
Удаляет единственного легкого дочернего элемента области просмотра.
- Переопределяет:
-
removeв классеContainer - Параметры:
-
child- компонент для удаления - См. также:
setView(java.awt.Component)
scrollRectToVisible
public void scrollRectToVisible(Rectangle contentRect)
Прокручивает представление так, чтобы Rectangle в представлении стало видимым.
Это пытается валидировать представление перед прокруткой, если представление в данный момент не валидно — isValid возвращает ложь. Чтобы избежать избыточной валидации при создании иерархии контейнеров, это не будет валидировать, если у одного из предков нет отображения, или нет предка валидации, или один из предков не является Window или Applet.
Обратите внимание, что этот метод не будет прокручивать за пределы действительной области просмотра; например, если contentRect больше, чем область просмотра, прокрутка будет ограничена границами области просмотра.
- Переопределяет:
-
scrollRectToVisibleв классеJComponent - Параметры:
-
contentRect-Rectangleдля отображения - См. также:
-
JComponent.isValidateRoot(),Component.isValid(),Component.getPeer()
setBorder
public final void setBorder(Border border)
Область просмотра "прокручивает" свой дочерний элемент (называемый "представление") с помощью обычного родительско-дочернего обрезания (как правило, представление перемещается в противоположном направлении прокрутки). Граница, которая не является null, или не нулевые отступы, не поддерживаются, чтобы предотвратить усложнение геометрии этого компонента настолько, чтобы помешать наследованию. Чтобы создать JViewport с границей, добавьте его в JPanel с границей.
Примечание: Если border не null, этот метод выбросит исключение, так как границы не поддерживаются в JViewPort.
- Переопределяет:
-
setBorderв классеJComponent - Параметры:
-
border- устанавливаемаяBorder - Исключения:
-
IllegalArgumentException- этот метод не реализован - См. также:
-
Border,CompoundBorder
getInsets
public final Insets getInsets()
Возвращает размеры отступов (границы) как (0,0,0,0), поскольку границы не поддерживаются в JViewport.
- Переопределяет:
-
getInsetsв классеJComponent - Возвращает:
- объект
Rectangleнулевого размера и нулевого начала - См. также:
setBorder(javax.swing.border.Border)
getInsets
public final Insets getInsets(Insets insets)
Возвращает объект Insets, содержащий значения отступов этой области просмотра. Переданный объект Insets будет перезапущен, и все существующие значения в этом объекте будут перезаписаны.
- Переопределяет:
-
getInsetsв классеJComponent - Параметры:
-
insets- объектInsets, который может быть повторно использован - Возвращает:
- значения отступов этой области просмотра
- См. также:
getInsets()
isOptimizedDrawingEnabled
public boolean isOptimizedDrawingEnabled()
Область просмотра переопределяет реализацию этого метода (в JComponent) на false. Это гарантирует, что механизм отрисовки будет вызывать реализацию метода Viewport's paint, а не отправлять сообщения непосредственно дочерним элементам JViewport.
- Переопределяет:
-
isOptimizedDrawingEnabledв классеJComponent - Возвращает:
- ложь
isPaintingOrigin
protected boolean isPaintingOrigin()
Возвращает true, если режим прокрутки — BACKINGSTORE_SCROLL_MODE, чтобы отрисовка происходила от JViewport, или одного из его предков. В противном случае возвращает false.
- Переопределяет:
-
isPaintingOriginв классеJComponent - Возвращает:
- true, если режим прокрутки —
BACKINGSTORE_SCROLL_MODE. - См. также:
JComponent.isPaintingOrigin()
paint
public void paint(Graphics g)
В зависимости от того, включена ли backingStore, либо рисует изображение через буфер, либо рисует только недавно открытую часть, используя буфер для "blit" остальной части.
Термин "blit" — произношение инструкции PDP-10 BLT (BLock Transfer), которая копировала блок битов. (На случай, если вы были заинтересованы.)
- Переопределяет:
-
paintв классеJComponent - Параметры:
-
g- контекстGraphics, в котором необходимо нарисовать - См. также:
-
JComponent.paintComponent(java.awt.Graphics),JComponent.paintBorder(java.awt.Graphics),JComponent.paintChildren(java.awt.Graphics),JComponent.getComponentGraphics(java.awt.Graphics),JComponent.repaint(long, int, int, int, int)
reshape
public void reshape(int x,
int y,
int w,
int h) Устанавливает границы этого представления. Если ширина или высота представления изменились, генерируется событие StateChanged.
- Переопределяет:
-
reshapeв классеJComponent - Параметры:
-
x- левая граница начала координат -
y- верхняя граница начала координат -
w- ширина в пикселях -
h- высота в пикселях - См. также:
JComponent.reshape(int, int, int, int)
setScrollMode
public void setScrollMode(int mode)
Используется для управления методом прокрутки содержимого представления. Возможно, вам потребуется изменить этот режим для достижения максимальной производительности в вашем случае использования.
- Параметры:
-
mode- одно из следующих значений:- JViewport.BLIT_SCROLL_MODE
- JViewport.BACKINGSTORE_SCROLL_MODE
- JViewport.SIMPLE_SCROLL_MODE
- Since:
- 1.3
- См. также:
-
BLIT_SCROLL_MODE,BACKINGSTORE_SCROLL_MODE,SIMPLE_SCROLL_MODE
getScrollMode
public int getScrollMode()
Возвращает текущий режим прокрутки.
- Возвращает:
- свойство
scrollMode - Since:
- 1.3
- См. также:
setScrollMode(int)
isBackingStoreEnabled
@Deprecated public boolean isBackingStoreEnabled()
Устаревшее. С версии Java 2 платформы v1.3, заменено на getScrollMode().
Возвращает true, если это представление поддерживает оффскрин изображение своего содержимого.
- Возвращает:
-
trueеслиscrollModeравноBACKINGSTORE_SCROLL_MODE
setBackingStoreEnabled
@Deprecated public void setBackingStoreEnabled(boolean enabled)
Устаревшее. С версии Java 2 платформы v1.3, заменено на setScrollMode().
Если true, это представление будет поддерживать оффскрин изображение своего содержимого. Изображение используется для снижения затрат при небольших одномерных изменениях viewPosition. Вместо перерисовки всего представления используется Graphics.copyArea для реализации некоторых операций прокрутки.
- Параметры:
-
enabled- если true, поддерживать оффскрин кеширование
getView
public Component getView()
Возвращает единственного потомка представления или null.
- Возвращает:
- потомок представления или
null, если такового нет - См. также:
setView(java.awt.Component)
setView
public void setView(Component view)
Устанавливает единственного легковесного потомка представления (view), который может быть null.
- Параметры:
-
view- новый легковесный потомок представления - См. также:
getView()
getViewSize
public Dimension getViewSize()
Если размер представления не был явно задан, возвращается предпочтительный размер, в противном случае возвращается текущий размер представления. Если представления нет, возвращается 0,0.
- Возвращает:
- объект
Dimension, указывающий размер представления
setViewSize
public void setViewSize(Dimension newSize)
Устанавливает размер представления. Будет выведено событие изменения состояния.
- Параметры:
-
newSize- объектDimension, указывающий новый размер представления
getViewPosition
public Point getViewPosition()
Возвращает координаты представления, которые отображаются в левом верхнем углу представления, или 0,0, если представления нет.
- Возвращает:
- объект
Point, содержащий координаты верхнего левого угла
setViewPosition
public void setViewPosition(Point p)
Устанавливает координаты представления, которые отображаются в левом верхнем углу представления, ничего не делает, если представления нет.
- Параметры:
-
p- объектPoint, содержащий координаты верхнего левого угла
getViewRect
public Rectangle getViewRect()
Возвращает прямоугольник, начало которого находится в getViewPosition , а размер — в getExtentSize. Это видимая часть представления в координатах представления.
- Возвращает:
- объект
Rectangle, содержащий видимую часть представления в координатах представления.
computeBlit
protected boolean computeBlit(int dx,
int dy,
Point blitFrom,
Point blitTo,
Dimension blitSize,
Rectangle blitPaint) Вычисляет параметры для копирования, где изображение кеша в данный момент содержит oldLoc в левом верхнем углу, и мы прокручиваем до newLoc. Параметры изменяются для возврата необходимых значений для копирования.
- Параметры:
-
dx- горизонтальное смещение -
dy- вертикальное смещение -
blitFrom- точкаPointдля копирования -
blitTo- точкаPointдля копирования -
blitSize- размерDimensionобласти для копирования -
blitPaint- область для копирования - Возвращает:
- true, если параметры изменены и мы готовы к копированию; иначе false
getExtentSize
public Dimension getExtentSize()
Возвращает размер видимой части представления в координатах представления.
- Возвращает:
- объект
Dimension, содержащий размер представления
toViewCoordinates
public Dimension toViewCoordinates(Dimension size)
Преобразует размер в пиксельных координатах в координаты представления. Подклассы представления, которые поддерживают «логические координаты», переопределят этот метод.
- Параметры:
-
size- объектDimensionс пиксельными координатами - Возвращает:
- объект
Dimension, преобразованный в координаты представления
toViewCoordinates
public Point toViewCoordinates(Point p)
Преобразует точку в пиксельных координатах в координаты представления. Подклассы представления, которые поддерживают «логические координаты», переопределят этот метод.
- Параметры:
-
p- объектPointс пиксельными координатами - Возвращает:
- объект
Point, преобразованный в координаты представления
setExtentSize
public void setExtentSize(Dimension newExtent)
Устанавливает размер видимой части представления в координатах представления.
- Параметры:
-
newExtent- объектDimension, указывающий размер представления
createViewListener
protected JViewport.ViewListener createViewListener()
Создает слушатель для представления.
- Возвращает:
- объект
ViewListener
createLayoutManager
protected LayoutManager createLayoutManager()
Подклассы могут переопределить этот метод для установки другого менеджера компоновки (или null) в конструкторе. Возвращает менеджер LayoutManager для установки на JViewport.
- Возвращает:
- объект
LayoutManager
addChangeListener
public void addChangeListener(ChangeListener l)
Добавляет ChangeListener в список, который уведомляется каждый раз при изменении размера, положения представления или размера области просмотра.
- Параметры:
-
l- добавляемыйChangeListener - См. также:
-
removeChangeListener(javax.swing.event.ChangeListener),setViewPosition(java.awt.Point),setViewSize(java.awt.Dimension),setExtentSize(java.awt.Dimension)
removeChangeListener
public void removeChangeListener(ChangeListener l)
Удаляет ChangeListener из списка, который уведомляется каждый раз при изменении размера, положения представления или размера области просмотра.
- Параметры:
-
l- удаляемыйChangeListener - См. также:
addChangeListener(javax.swing.event.ChangeListener)
getChangeListeners
public ChangeListener[] getChangeListeners()
Возвращает массив всех ChangeListener , добавленных в это JViewport с помощью addChangeListener().
- Возвращает:
- все добавленные
ChangeListenerили пустой массив, если слушатели не добавлены - Since:
- 1.4
fireStateChanged
protected void fireStateChanged()
Уведомляет всех ChangeListeners при изменении размера, положения представления или размера области просмотра.
- См. также:
-
addChangeListener(javax.swing.event.ChangeListener),removeChangeListener(javax.swing.event.ChangeListener),EventListenerList
repaint
public void repaint(long tm,
int x,
int y,
int w,
int h) Всегда перерисовывает в координатах родителя, чтобы убедиться, что RepaintManager выполняет только одно перерисовку.
- Переопределяет:
-
repaintв классеJComponent - Параметры:
-
tm- максимальное время в миллисекундах до обновления -
x- координата поx(пиксели справа от левого края) -
y- координата поy(пиксели вниз от верхнего края) -
w- ширина -
h- высота - См. также:
Component.update(java.awt.Graphics)
paramString
protected String paramString()
Возвращает строковое представление этого JViewport. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться между реализациями. Возвращаемая строка может быть пустой, но не может быть null.
- Переопределяет:
-
paramStringв классеJComponent - Возвращает:
- строковое представление этого
JViewport
firePropertyChange
protected void firePropertyChange(String propertyName,
Object oldValue,
Object newValue) Уведомляет слушателей о изменении свойства. Это переопределяется для обновления свойства windowBlit. (Свойство putClientProperty является конечным).
- Переопределяет:
-
firePropertyChangeв классеComponent - Параметры:
-
propertyName- строка, содержащая имя свойства -
oldValue- старое значение свойства -
newValue- новое значение свойства
getAccessibleContext
public AccessibleContext getAccessibleContext()
Возвращает AccessibleContext, связанный с этим JViewport. Для виджетов-вьюпортов AccessibleContext принимает форму AccessibleJViewport. Новый экземпляр AccessibleJViewport создается при необходимости.
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеComponent - Возвращает:
- AccessibleJViewport, который служит AccessibleContext этого JViewport
© 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.