Spec-Zone.ru › OpenJDK 17

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

ПРИМЕЧАНИЕ:Мы реализовали более быстрый алгоритм прокрутки, который не требует буфера для рисования. Алгоритм работает следующим образом:

  1. Проверяется, являются ли представление и родительское представление JComponents, если нет, останавливается и перерисовывается весь видоискатель.
  2. Если видоискатель скрыт предком, останавливается и перерисовывается весь видоискатель.
  3. Вычисляется область, которая станет видимой. Если она такая же, как видоискатель, останавливается и перерисовывается вся область представления.
  4. Получаются графические средства предка Window, и выполняется copyArea в области прокрутки.
  5. Представлению отправляется сообщение о перерисовке новой видимой области.
  6. В следующий раз, когда вызывается paint для видоискателя, если область обрезки меньше размера видоискателя, запускается таймер для перерисовки всей области.
В целом, этот подход намного быстрее. По сравнению с подходом с буфером он избегает накладных расходов на поддержание автономного буфера и выполнение двух copyArea. По сравнению с вариантом без буфера, этот подход значительно уменьшит область рисования.

Этот подход может привести к более медленной работе, чем подход с буфером, когда видоискатель скрыт другой окном или частично находится за пределами экрана. Когда другое окно скрывает видоискатель, copyArea скопирует мусор, и система сгенерирует событие paint, чтобы уведомить нас о необходимости перерисовать вновь открытую область. Единственный способ справиться с этим — перерисовать весь видоискатель, что может привести к более медленной работе, чем с буфером. В большинстве приложений пользователь очень редко будет прокручивать, пока видоискатель скрыт другим окном или находится за пределами экрана, поэтому эта оптимизация обычно стоит затраченных ресурсов при скрытии.

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

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

С:
1.2
См. также:
  • JScrollPane

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

Модификатор и тип Класс Описание
protected class  JViewport.AccessibleJViewport
Этот класс реализует поддержку доступности для класса JViewport.
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 platform v1.3
static final int BACKINGSTORE_SCROLL_MODE
Отображает содержимое видоискателя в автономном изображении.
protected Image backingStoreImage
Изображение представления, используемое для автономного хранилища.
static final int BLIT_SCROLL_MODE
Используйте graphics.copyArea для реализации прокрутки.
protected boolean isViewSizeSet
Истина, когда размеры видоискателя определены.
protected Point lastPaintPosition
Последняя viewPosition , которую мы нарисовали, чтобы мы знали, какая часть изображения автономного хранилища действительна.
protected boolean scrollUnderway
Флаг scrollUnderway используется для компонентов, таких как JList.
static final 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()
Создает JViewport.

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

Modifier and Type Method Description
void addChangeListener(ChangeListener l)
Добавляет ChangeListener в список, который уведомляется всякий раз, когда размер, положение представления или размер области просмотра изменяются.
protected void addImpl(Component child, Object constraints, int index)
Устанавливает единственного легкого потомка JViewport, который может быть null.
protected boolean computeBlit(int dx, int dy, Point blitFrom, Point blitTo, Dimension blitSize, Rectangle blitPaint)
Вычисляет параметры для blit, где изображение буфера изображений в данный момент содержит oldLoc в верхнем левом углу, и мы прокручиваем до newLoc.
protected LayoutManager createLayoutManager()
Подклассы могут переопределить это, чтобы установить другой менеджер макета (или null) в конструкторе.
protected JViewport.ViewListener createViewListener()
Создает слушатель для представления.
protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
Уведомляет слушателей об изменении свойства.
protected void fireStateChanged()
Уведомляет всех ChangeListeners о том, что размер, положение или размер области просмотра представления изменились.
AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JViewport.
ChangeListener[] getChangeListeners()
Возвращает массив всех ChangeListeners, добавленных в этот JViewport с помощью addChangeListener().
Dimension getExtentSize()
Возвращает размер видимой части представления в координатах представления.
final Insets getInsets()
Возвращает размеры отступов (рамки) как (0,0,0,0), так как рамки не поддерживаются в JViewport.
final Insets getInsets(Insets insets)
Возвращает объект Insets, содержащий значения отступов этого JViewport.
int getScrollMode()
Возвращает текущий режим прокрутки.
ViewportUI getUI()
Возвращает объект L&F, который отображает этот компонент.
String getUIClassID()
Возвращает строку, которая указывает имя класса L&F, отображающего этот компонент.
Component getView()
Возвращает единственного легкого потомка JViewport или null.
Point getViewPosition()
Возвращает координаты представления, которые отображаются в верхнем левом углу области просмотра, или 0,0, если представления нет.
Rectangle getViewRect()
Возвращает прямоугольник, начало которого getViewPosition, а размер getExtentSize.
Dimension getViewSize()
Если размер представления не был явно задан, возвращает предпочтительный размер, иначе возвращает текущий размер представления.
boolean isBackingStoreEnabled()
Устарело.
С Java 2 platform v1.3 заменено на getScrollMode().
boolean isOptimizedDrawingEnabled()
JViewport переопределяет реализацию по умолчанию этого метода (в JComponent) для возврата false.
protected boolean isPaintingOrigin()
Возвращает true, если режим прокрутки — BACKINGSTORE_SCROLL_MODE для вывода рисования с JViewport, или одного из его предков.
void paint(Graphics g)
В зависимости от того, включен ли backingStore, рисует изображение через буфер изображений или только недавно видимую часть, используя буфер изображений для «blit» остальной части.
protected String paramString()
Возвращает строковое представление этого JViewport.
void remove(Component child)
Удаляет единственного легкого потомка Viewport.
void removeChangeListener(ChangeListener l)
Удаляет ChangeListener из списка, который уведомляется каждый раз, когда размер, позиция представления или размер области просмотра меняются.
void repaint(long tm, int x, int y, int w, int h)
Всегда перерисовывает в системе координат родителя, чтобы убедиться, что RepaintManager выполняет только одно перерисовку.
void reshape(int x, int y, int w, int h)
Устанавливает границы этой области просмотра.
void scrollRectToVisible(Rectangle contentRect)
Прокручивает представление так, чтобы Rectangle в представлении стало видимым.
void setBackingStoreEnabled(boolean enabled)
Устарело.
С Java 2 platform v1.3 заменено на setScrollMode().
final void setBorder(Border border)
Область просмотра «прокручивает» свой дочерний элемент (называемый «представлением») с помощью стандартного родительского/дочернего обрезания (как правило, представление перемещается в противоположном направлении прокрутки).
void setExtentSize(Dimension newExtent)
Устанавливает размер видимой части представления с использованием координат представления.
void setScrollMode(int mode)
Используется для управления методом прокрутки содержимого области просмотра.
void setUI(ViewportUI ui)
Устанавливает объект L&F, который отображает этот компонент.
void setView(Component view)
Устанавливает единственного легкого потомка JViewport (view), который может быть null.
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, 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, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, 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

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

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 и выделенная ячейка является последней в списке, scrollpane выполняет автоматическую прокрутку. Здесь необходимо перерисовать старую выделенную ячейку, поэтому нам нужен флаг, чтобы область просмотра выполняла оптимизированное рисование только при явном вызове 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, который отрисовывает этот компонент.
Переопределяет:
getUI в классе JComponent
Возвращает:
объект ViewportUI
С:
1.3

setUI

@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component\'s LookAndFeel.") public void setUI(ViewportUI ui)
Устанавливает объект L&F, который отрисовывает этот компонент.
Параметры:
ui - объект L&F ViewportUI
С:
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 возвращает false. Чтобы избежать избыточной проверки при создании иерархии содержимого, это не будет проверять, если один из предков не имеет псевдонима, или нет предка, который является корнем проверки, или один из предков не является Window или Applet.

Обратите внимание, что этот метод не будет прокручивать за пределы допустимой области просмотра; например, если contentRect больше, чем область просмотра, прокрутка будет ограничена пределами области просмотра.

Переопределяет:
scrollRectToVisible в классе JComponent
Параметры:
contentRect - область Rectangle для отображения
См. также:
  • JComponent.isValidateRoot()
  • Component.isValid()

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

@BeanProperty(expert=true) public final Insets getInsets(Insets insets)
Возвращает объект Insets, содержащий отступы этого JViewport. Переданный объект Insets будет перезапущен, а все существующие значения в этом объекте будут перезаписаны.
Overrides:
getInsets в классе JComponent
Parameters:
insets - объект Insets, который может быть повторно использован
Returns:
значения отступов области просмотра
See Also:
  • getInsets()

isOptimizedDrawingEnabled

public boolean isOptimizedDrawingEnabled()
Метод JViewport переопределяет реализацию по умолчанию этого метода (в JComponent) для возвращения false. Это гарантирует, что механизм рисования будет вызывать реализацию Viewport paint, а не отправлять сообщения непосредственно дочерним элементам JViewport.
Overrides:
isOptimizedDrawingEnabled в классе JComponent
Returns:
false

isPaintingOrigin

protected boolean isPaintingOrigin()
Возвращает true, если режим прокрутки является BACKINGSTORE_SCROLL_MODE, чтобы обеспечить начало рисования с JViewport, или одного из его предков. В противном случае возвращает false.
Overrides:
isPaintingOrigin в классе JComponent
Returns:
true, если режим прокрутки является BACKINGSTORE_SCROLL_MODE.
See Also:
  • JComponent.isPaintingOrigin()

paint

public void paint(Graphics g)
В зависимости от того, включен ли backingStore, рисует изображение через буферный магазин или только недавно открытую часть, используя буферный магазин для "копирования" остальной части.
Термин "копирование" - это произнесённая версия инструкции BLT (BLock Transfer) PDP-10, которая копировала блок битов. (В случае, если вас это интересовало.)
Overrides:
paint в классе JComponent
Parameters:
g - контекст Graphics, в рамках которого выполняется отрисовка
See Also:
  • 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.
Overrides:
reshape в классе JComponent
Parameters:
x - левая граница начала отсчёта
y - верхняя граница начала отсчёта
w - ширина в пикселях
h - высота в пикселях
See Also:
  • JComponent.reshape(int, int, int, int)

setScrollMode

@BeanProperty(bound=false, enumerationValues={"JViewport.BLIT_SCROLL_MODE","JViewport.BACKINGSTORE_SCROLL_MODE","JViewport.SIMPLE_SCROLL_MODE"}, description="Method of moving contents for incremental scrolls.") public void setScrollMode(int mode)
Используется для управления способом прокрутки содержимого области просмотра. Возможно, вам нужно изменить этот режим, чтобы получить максимальную производительность для вашего случая использования.
Parameters:
mode - одно из следующих значений:
  • JViewport.BLIT_SCROLL_MODE
  • JViewport.BACKINGSTORE_SCROLL_MODE
  • JViewport.SIMPLE_SCROLL_MODE
Since:
1.3
See Also:
  • BLIT_SCROLL_MODE
  • BACKINGSTORE_SCROLL_MODE
  • SIMPLE_SCROLL_MODE

getScrollMode

public int getScrollMode()
Возвращает текущий режим прокрутки.
Returns:
свойство scrollMode
Since:
1.3
See Also:
  • setScrollMode(int)

isBackingStoreEnabled

@Deprecated public boolean isBackingStoreEnabled()
Deprecated.
С версии Java 2 platform v1.3, заменено на getScrollMode().
Возвращает true, если эта область просмотра поддерживает изображение вне экрана своего содержимого.
Returns:
true если scrollMode BACKINGSTORE_SCROLL_MODE

setBackingStoreEnabled

@Deprecated public void setBackingStoreEnabled(boolean enabled)
Deprecated.
С версии Java 2 platform v1.3, заменено на setScrollMode().
Если true, эта область просмотра будет поддерживать изображение вне экрана своего содержимого. Изображение используется для сокращения затрат на небольшие одномерные изменения в viewPosition. Вместо перерисовки всей области просмотра мы используем Graphics.copyArea для некоторых операций прокрутки.
Parameters:
enabled - если true, поддерживать буферный магазин вне экрана

getView

public Component getView()
Возвращает единственного потомка JViewport или null.
Returns:
потомок области просмотра, или null если такового нет
See Also:
  • setView(java.awt.Component)

setView

public void setView(Component view)
Устанавливает единственного лёгкого потомка JViewport (view), который может быть null.
Parameters:
view - новый лёгкий потомок области просмотра
See Also:
  • getView()

getViewSize

public Dimension getViewSize()
Если размер представления не был явно задан, возвращает предпочтительный размер, в противном случае возвращает текущий размер представления. Если представления нет, возвращает 0,0.
Returns:
объект Dimension, определяющий размер представления

setViewSize

public void setViewSize(Dimension newSize)
Устанавливает размер представления. Будет сгенерировано событие изменения состояния.
Parameters:
newSize - объект Dimension, определяющий новый размер представления

getViewPosition

public Point getViewPosition()
Возвращает координаты представления, отображаемые в верхнем левом углу области просмотра, или 0,0, если представления нет.
Returns:
объект Point, указывающий координаты верхнего левого угла

setViewPosition

public void setViewPosition(Point p)
Устанавливает координаты представления, которые отображаются в верхнем левом углу области просмотра, ничего не делает, если представление отсутствует.
Parameters:
p - объект Point, указывающий координаты верхнего левого угла

getViewRect

public Rectangle getViewRect()
Возвращает прямоугольник, начало которого находится в getViewPosition, а размер - в getExtentSize. Это видимая часть представления в координатах представления.
Returns:
объект Rectangle, содержащий видимую часть представления в координатах представления.

computeBlit

protected boolean computeBlit(int dx, int dy, Point blitFrom, Point blitTo, Dimension blitSize, Rectangle blitPaint)
Вычисляет параметры копирования, где изображение буфера в настоящее время содержит oldLoc в верхнем левом углу, и мы прокручиваем до newLoc. Параметры модифицируются для возврата значений, необходимых для копирования.
Parameters:
dx - горизонтальный сдвиг
dy - вертикальный сдвиг
blitFrom - исходное положение для копирования в Point
blitTo - конечное положение для копирования в Point
blitSize - размер области для копирования
blitPaint - область для копирования
Returns:
true, если параметры изменены и мы готовы к копированию; в противном случае - false

getExtentSize

public Dimension getExtentSize()
Возвращает размер видимой части представления в координатах представления.
Returns:
объект Dimension, содержащий размер представления

toViewCoordinates

public Dimension toViewCoordinates(Dimension size)
Преобразует размер в пиксельных координатах в координаты представления. Подклассы области просмотра, которые поддерживают "логические координаты", переопределят этот метод.
Parameters:
size - объект Dimension, использующий пиксельные координаты
Returns:
объект Dimension, преобразованный в координаты представления

toViewCoordinates

public Point toViewCoordinates(Point p)
Преобразует точку в пиксельных координатах в координаты представления. Подклассы viewport, поддерживающие «логические координаты», переопределяют этот метод.
Parameters:
p - объект Point, использующий пиксельные координаты
Returns:
объект Point, преобразованный в координаты представления

setExtentSize

public void setExtentSize(Dimension newExtent)
Устанавливает размер видимой части представления, используя координаты представления.
Parameters:
newExtent - объект Dimension, определяющий размер представления

createViewListener

protected JViewport.ViewListener createViewListener()
Создаёт слушатель для представления.
Returns:
слушатель ViewListener

createLayoutManager

protected LayoutManager createLayoutManager()
Подклассы могут переопределить этот метод для установки другого менеджера компоновки (или null) в конструкторе. Возвращает LayoutManager для установки на JViewport.
Returns:
менеджер компоновки LayoutManager

addChangeListener

public void addChangeListener(ChangeListener l)
Добавляет ChangeListener в список, который уведомляется каждый раз, когда изменяются размер, позиция представления или размер области просмотра.
Parameters:
l - добавляемый ChangeListener
See Also:
  • removeChangeListener(javax.swing.event.ChangeListener)
  • setViewPosition(java.awt.Point)
  • setViewSize(java.awt.Dimension)
  • setExtentSize(java.awt.Dimension)

removeChangeListener

public void removeChangeListener(ChangeListener l)
Удаляет ChangeListener из списка, который уведомляется каждый раз, когда изменяются размер, позиция представления или размер области просмотра.
Parameters:
l - удаляемый ChangeListener
See Also:
  • addChangeListener(javax.swing.event.ChangeListener)

getChangeListeners

public ChangeListener[] getChangeListeners()
Возвращает массив всех ChangeListener, добавленных в этот JViewport с помощью addChangeListener().
Returns:
все добавленные ChangeListener или пустой массив, если слушатели не добавлены
Since:
1.4

fireStateChanged

protected void fireStateChanged()
Уведомляет всех ChangeListeners о том, что изменились размер, позиция представления или размер области просмотра.
See Also:
  • 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 выполняет только одно перерисовывание.
Overrides:
repaint in class JComponent
Parameters:
tm - максимальное время в миллисекундах перед обновлением
x - координата по горизонтали (пиксели от левого края)
y - координата по вертикали (пиксели от верхнего края)
w - ширина
h - высота
See Also:
  • Component.update(java.awt.Graphics)

paramString

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

firePropertyChange

protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
Уведомляет слушателей о изменении свойства. Этот метод переопределен для обновления свойства windowBlit . (Свойство putClientProperty является final).
Overrides:
firePropertyChange in class Component
Parameters:
propertyName - строка, содержащая имя свойства
oldValue - старое значение свойства
newValue - новое значение свойства

getAccessibleContext

public AccessibleContext getAccessibleContext()
Возвращает AccessibleContext, связанный с этим JViewport. Для viewport AccessibleContext принимает форму AccessibleJViewport. Новый экземпляр AccessibleJViewport создаётся при необходимости.
Specified by:
getAccessibleContext in interface Accessible
Overrides:
getAccessibleContext in class Component
Returns:
AccessibleJViewport, который служит AccessibleContext для этого JViewport

© 1993, 2021, 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/17/docs/api/java.desktop/javax/swing/JViewport.html

Spec-Zone.ru

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