目前,我有Applet
在其中运行while循环,它执行两项操作。
tick()
render(buffer.getGraphics(), getGraphics)
。 缓冲区是我通过执行以下操作创建的双缓冲图像:
if(buffer == null)
{
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
buffer = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration().createCompatibleVolatileImage(d.width, d.height);
}
现在这个工作正常,唯一的问题是当我调用小程序setSize()
和JFrame
时,新添加的像素只是灰显了。目前我只是在每次更改大小时创建一个新的缓冲区,但这会导致闪烁效果。任何人都知道在使用添加的新区域时我可以重用现有的方法吗?感谢
答案 0 :(得分:1)
..问题是我打电话给小程序的
setSize()
..
这不是代码应该做的事情。 applet的大小在加载它的HTML中设置。
要解决此问题,请删除设置大小的代码。