Класс Component.FlipBufferStrategy
- java.lang.Object
-
- java.awt.image.BufferStrategy
-
- java.awt.Component.FlipBufferStrategy
- Вложенный класс:
- Component
protected class Component.FlipBufferStrategy extends BufferStrategy
Внутренний класс для переключения буферов на компоненте. Этот компонент должен быть Canvas или Window.
- С момента:
- 1.4
- См. также:
-
Canvas,Window,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.
- Параметры:
-
numBuffers- количество буферов -
caps- возможности буферов - Исключения:
-
AWTException- если предоставленные возможности не могут быть поддержаны или выполнены -
ClassCastException- если компонент не является холстом или окном. -
IllegalStateException- если у компонента нет пары -
IllegalArgumentException- еслиnumBuffersменьше двух, или еслиBufferCapabilities.isPageFlippingнеtrue. - См. также:
-
Canvas,Window,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.