【发布时间】:2018-05-17 06:19:25
【问题描述】:
我想知道如何在 Java Applet 中使用类似缓冲策略的东西。
我想画一些像图像的东西
gfx.drawImage(frame, 0, 0, width, height, null);
到我的小程序,但由于没有缓冲到屏幕上绘制的图形,我得到了白色闪烁。
任何帮助将不胜感激!
编辑:我有一个线程正在重新绘制此图像
编辑 2:图像不断变化,所以每次变化时我都需要重新绘制它
【问题讨论】:
-
小程序已经死了 - 是时候移动了。 Swing 组件默认是双缓冲的,这可能是一个更好的起点(是的,您可以将 Swing 组件添加到小程序中)
-
这对我来说有点太宽泛了,所以我担心你最好找一个教程。那里有很多好的。基本思想是:您在画布上绘制所有内容,然后将完成的画布绘制到您的屏幕上。因此,不是绘制背景,然后在顶部添加每个元素(这会导致闪烁),而是每帧只绘制一个图像。
-
然而,MadProgrammer 确实有一点,Applet 绝对不是要走的路。
-
@BlazingForrest Applet 已经死了,主要是因为浏览器已经停止支持它们以及 Flash(感谢开发人员)。如果您真的想为 Web 制作游戏,那么也许您应该关注 HTML 5,它的支持
标签: java applet awt graphics2d japplet