【问题标题】:How to get / use bufferstrategy in a Java applet?如何在 Java 小程序中获取/使用缓冲区策略?
【发布时间】:2018-05-17 06:19:25
【问题描述】:

我想知道如何在 Java Applet 中使用类似缓冲策略的东西。

我想画一些像图像的东西

gfx.drawImage(frame, 0, 0, width, height, null);

到我的小程序,但由于没有缓冲到屏幕上绘制的图形,我得到了白色闪烁。

任何帮助将不胜感激!

编辑:我有一个线程正在重新绘制此图像

编辑 2:图像不断变化,所以每次变化时我都需要重新绘制它

【问题讨论】:

  • 小程序已经死了 - 是时候移动了。 Swing 组件默认是双缓冲的,这可能是一个更好的起点(是的,您可以将 Swing 组件添加到小程序中)
  • 这对我来说有点太宽泛了,所以我担心你最好找一个教程。那里有很多好的。基本思想是:您在画布上绘制所有内容,然后将完成的画布绘制到您的屏幕上。因此,不是绘制背景,然后在顶部添加每个元素(这会导致闪烁),而是每帧只绘制一个图像。
  • 然而,MadProgrammer 确实有一点,Applet 绝对不是要走的路。
  • 您还应该考虑看看tutorialsJavaDocs 作为起点
  • @BlazingForrest Applet 已经死了,主要是因为浏览器已经停止支持它们以及 Flash(感谢开发人员)。如果您真的想为 Web 制作游戏,那么也许您应该关注 HTML 5,它的支持

标签: java applet awt graphics2d japplet


【解决方案1】:

啊,所以 public void update(Graphics g) 方法没有白色闪烁,因为没有缓冲到屏幕上绘制的图形。但是绘画方法可以。奇怪。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-11
    • 1970-01-01
    相关资源
    最近更新 更多