Module java.desktop
Package java.awt

Class Component.FlipBufferStrategy

java.lang.Object
java.awt.image.BufferStrategy
java.awt.Component.FlipBufferStrategy
封闭类:
Component

protected class Component.FlipBufferStrategy extends BufferStrategy
用于在组件上翻转缓冲区的内部类。该组件必须是CanvasWindowApplet
自从:
1.4
参见:
  • Field Details

    • numBuffers

      protected int numBuffers
      缓冲区的数量
    • caps

      protected BufferCapabilities caps
      缓冲功能
    • drawBuffer

      protected Image drawBuffer
      绘图缓冲区
    • drawVBuffer

      protected VolatileImage drawVBuffer
      绘图缓冲区作为易失性图像
    • validatedContents

      protected boolean validatedContents
      绘图缓冲区是否最近从丢失状态中恢复。
  • Constructor Details

  • Method Details

    • createBuffers

      protected void createBuffers(int numBuffers, BufferCapabilities caps) throws AWTException
      使用给定的能力创建一个或多个复杂的翻转缓冲区。
      参数:
      numBuffers - 要创建的缓冲区数量;必须大于一
      caps - 缓冲区的能力。必须为true
      抛出:
      AWTException - 如果提供的能力无法支持或满足
      IllegalStateException - 如果组件没有对等体
      IllegalArgumentException - 如果numBuffers小于两个,或者BufferCapabilities.isPageFlipping不为true
      参见:
    • getBackBuffer

      protected Image getBackBuffer()
      以图像形式直接访问后备缓冲区。
      返回:
      作为图像的后备缓冲区
      抛出:
      IllegalStateException - 如果尚未创建缓冲区
    • flip

      protected void flip(BufferCapabilities.FlipContents flipAction)
      翻转将后备缓冲区的内容移动到前端缓冲区,可以通过复制或移动视频指针来实现。
      参数:
      flipAction - 描述后备缓冲区内容翻转操作的整数值。这应该是BufferCapabilities.FlipContents属性值之一。
      抛出:
      IllegalStateException - 如果尚未创建缓冲区
      参见:
    • destroyBuffers

      protected void destroyBuffers()
      销毁通过此对象创建的缓冲区
    • getCapabilities

      public BufferCapabilities getCapabilities()
      从类中复制的描述: BufferStrategy
      返回此BufferStrategyBufferCapabilities
      指定者:
      getCapabilities 在类中 BufferStrategy
      返回:
      此策略的缓冲功能
    • getDrawGraphics

      public Graphics getDrawGraphics()
      从类中复制的描述: BufferStrategy
      为绘图缓冲区创建一个图形上下文。出于性能原因,此方法可能不是同步的;多个线程使用此方法应在应用程序级别处理。获取的图形对象的处理必须由应用程序处理。
      指定者:
      getDrawGraphics 在类中 BufferStrategy
      返回:
      绘图缓冲区上的图形。出于性能原因,此方法可能不是同步的;多个线程使用此方法应在应用程序级别处理。图形对象的处理必须由应用程序处理。
    • revalidate

      protected void revalidate()
      如果绘图缓冲区丢失,则恢复它
    • contentsLost

      public boolean contentsLost()
      从类中复制的描述: BufferStrategy
      返回自上次调用getDrawGraphics以来绘图缓冲区是否丢失。由于缓冲策略中的缓冲区通常是VolatileImage类型,它们可能会丢失。有关丢失缓冲区的讨论,请参阅VolatileImage
      指定者:
      contentsLost 在类中 BufferStrategy
      返回:
      自上次调用getDrawGraphics以来绘图缓冲区是否丢失
      参见:
    • contentsRestored

      public boolean contentsRestored()
      从类中复制的描述: BufferStrategy
      返回自上次调用getDrawGraphics以来绘图缓冲区是否最近从丢失状态中恢复并重新初始化为默认背景颜色(白色)。由于缓冲策略中的缓冲区通常是VolatileImage类型,它们可能会丢失。如果自上次调用getDrawGraphics以来表面最近从丢失状态中恢复,则可能需要重新绘制。有关丢失缓冲区的讨论,请参阅VolatileImage
      指定者:
      contentsRestored 在类中 BufferStrategy
      返回:
      绘图缓冲区是否最近从丢失状态中恢复并重新初始化为默认背景颜色(白色)
      参见:
    • show

      public void show()
      通过位块传输或翻转使下一个可用缓冲区可见。
      指定者:
      show 在类中 BufferStrategy
    • dispose

      public void dispose()
      释放当前由此BufferStrategy消耗的系统资源,并将其从关联的组件中移除。调用此方法后,getBufferStrategy将返回null。在已处理后的BufferStrategy上尝试将导致未定义的行为。
      覆盖:
      dispose 在类 BufferStrategy
      自Java版本:
      1.6
      参见: