Класс Component.FlipBufferStrategy
- java.lang.Object
-
- java.awt.image.BufferStrategy
-
- java.awt.Component.FlipBufferStrategy
- Вложенный класс:
- Component
protected class Component.FlipBufferStrategy extends BufferStrategy
Внутренний класс для переключения буферов на компоненте. Этот компонент должен быть Canvas или Window или Applet.
- С:
- 1.4
- См. также:
-
Canvas,Window,Applet,BufferStrategy
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected BufferCapabilities | caps | Возможности буферизации |
protected Image | drawBuffer | Буфер рисования |
protected VolatileImage | drawVBuffer | Буфер рисования как изменчивое изображение |
protected int | numBuffers | Количество буферов |
protected boolean | validatedContents | Состояние восстановления буфера рисования из потерянного состояния. |
Конструкторы
| Модификатор | Конструктор | Описание |
|---|---|---|
protected | FlipBufferStrategy(int numBuffers,
BufferCapabilities caps) | Создает новую стратегию переключения буферов для этого компонента. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | contentsLost() | Возвращает, был ли буфер рисования потерян с момента последнего вызова |
boolean | contentsRestored() | Возвращает, был ли буфер рисования недавно восстановлен из потерянного состояния и повторно инициализирован до цвета фона по умолчанию (белый). |
protected void | createBuffers(int numBuffers,
BufferCapabilities caps) | Создает один или несколько сложных буферов переключения с заданными возможностями. |
protected void | destroyBuffers() | Уничтожает буферы, созданные с помощью этого объекта. |
void | dispose() | Освобождает системные ресурсы, в настоящее время используемые этим |
protected void | flip(BufferCapabilities.FlipContents flipAction) | Переключение перемещает содержимое буфера заднего плана в буфер переднего плана, либо путем копирования, либо путем перемещения указателя видео. |
protected Image | getBackBuffer() | |
BufferCapabilities | getCapabilities() | Возвращает |
Graphics | getDrawGraphics() | Создает контекст графики для буфера рисования. |
protected void | revalidate() | Восстановление буфера рисования, если он был потерян. |
void | show() | Делает следующий доступный буфер видимым, либо путем блинкинга, либо путем переключения. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
numBuffers
protected int numBuffers
Количество буферов
caps
protected BufferCapabilities caps
Возможности буферизации
drawBuffer
protected Image drawBuffer
Буфер рисования
drawVBuffer
protected VolatileImage drawVBuffer
Буфер рисования как изменчимое изображение
validatedContents
protected boolean validatedContents
Указывает, был ли буфер рисования недавно восстановлен после потери состояния.
Конструкторы
FlipBufferStrategy
protected FlipBufferStrategy(int numBuffers,
BufferCapabilities caps)
throws AWTException Создаёт новую стратегию буферизации с переключением для этого компонента. Компонент должен быть Canvas или Window или Applet.
- Параметры:
-
numBuffers- количество буферов -
caps- возможности буферов - Исключения:
-
AWTException- если заданные возможности не поддерживаются или не соответствуют требованиям -
ClassCastException- если компонент не является холстом или окном. -
IllegalStateException- если у компонента нет псевдонима -
IllegalArgumentException- еслиnumBuffersменьше двух илиBufferCapabilities.isPageFlippingнеtrue. - См. также:
-
Canvas,Window,Applet,createBuffers(int, BufferCapabilities)
Методы
createBuffers
protected void createBuffers(int numBuffers,
BufferCapabilities caps)
throws AWTException Создаёт один или более сложных буферов с переключением с заданными возможностями.
- Параметры:
-
numBuffers- количество буферов для создания; должно быть больше одного -
caps- возможности буферов.BufferCapabilities.isPageFlippingдолжен бытьtrue. - Исключения:
-
AWTException- если заданные возможности не поддерживаются или не соответствуют требованиям -
IllegalStateException- если у компонента нет псевдонима -
IllegalArgumentException- если numBuffers меньше двух, илиBufferCapabilities.isPageFlippingнеtrue. - См. также:
BufferCapabilities.isPageFlipping()
getBackBuffer
protected Image getBackBuffer()
- Возвращает:
- прямой доступ к заднему буферу в виде изображения.
- Исключения:
-
IllegalStateException- если буферы ещё не были созданы
flip
protected void flip(BufferCapabilities.FlipContents flipAction)
Переключение перемещает содержимое заднего буфера в передний буфер, либо копируя, либо перемещая указатель видео.
- Параметры:
-
flipAction- целое значение, описывающее действие переключения для содержимого заднего буфера. Оно должно быть одним из значений свойстваBufferCapabilities.FlipContents. - Исключения:
-
IllegalStateException- если буферы ещё не были созданы - См. также:
BufferCapabilities.getFlipContents()
destroyBuffers
protected void destroyBuffers()
Удаляет буферы, созданные с помощью этого объекта
getCapabilities
public BufferCapabilities getCapabilities()
Описание скопировано из класса: BufferStrategy
Возвращает BufferCapabilities для этого BufferStrategy.
- Определено в:
-
getCapabilitiesв классеBufferStrategy - Возвращает:
- возможности буферизации этой стратегии
getDrawGraphics
public Graphics getDrawGraphics()
Описание скопировано из класса: BufferStrategy
Создаёт контекст графики для буфера рисования. Этот метод может не быть синхронизирован по соображениям производительности; использование этого метода несколькими потоками должно обрабатываться на уровне приложения. Утилизация графического объекта, полученного этим методом, должна выполняться приложением.
- Определено в:
-
getDrawGraphicsв классеBufferStrategy - Возвращает:
- графический контекст буфера рисования. Этот метод может не быть синхронизирован по соображениям производительности; использование этого метода несколькими потоками должно обрабатываться на уровне приложения. Утилизация графического объекта должна выполняться приложением.
revalidate
protected void revalidate()
Восстанавливает буфер рисования, если он был потерян
contentsLost
public boolean contentsLost()
Описание скопировано из класса: BufferStrategy
Возвращает, была ли потеряна область рисования с момента последнего вызова getDrawGraphics. Поскольку буферы в стратегии буферизации обычно имеют тип VolatileImage, они могут быть потеряны. Подробнее о потерянных буферах см. VolatileImage.
- Определено в:
-
contentsLostв классеBufferStrategy - Возвращает:
- была ли потеряна область рисования с момента последнего вызова
getDrawGraphics - См. также:
VolatileImage
contentsRestored
public boolean contentsRestored()
Описание скопировано из класса: BufferStrategy
Возвращает, был ли буфер рисования недавно восстановлен после потери состояния и повторно инициализирован до стандартного цвета фона (белого). Поскольку буферы в стратегии буферизации обычно имеют тип VolatileImage, они могут быть потеряны. Если поверхность была недавно восстановлена после потери состояния с момента последнего вызова getDrawGraphics, может потребоваться перерисовка. Подробнее о потерянных буферах см. VolatileImage.
- Определено в:
-
contentsRestoredв классеBufferStrategy - Возвращает:
- был ли буфер рисования недавно восстановлен после потери состояния и повторно инициализирован до стандартного цвета фона (белого)
- См. также:
VolatileImage
show
public void show()
Делает следующий доступный буфер видимым путём либо копирования, либо переключения.
- Определено в:
-
showв классеBufferStrategy
dispose
public void dispose()
Освобождает системные ресурсы, используемые этим BufferStrategy и удаляет его из связанного компонента. После вызова этого метода getBufferStrategy вернёт null. Попытка использовать BufferStrategy после его удаления приведёт к неопределённому поведению.
- Переопределяет:
-
disposeв классеBufferStrategy - С:
- 1.6
- См. также:
-
Window.createBufferStrategy(int),Canvas.createBufferStrategy(int),Window.getBufferStrategy(),Canvas.getBufferStrategy()
© 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/java/awt/Component.FlipBufferStrategy.html