相关疑难解决方法(0)

JApplet - super.paint(); 导致闪烁

我现在正在编写一个 JApplet,每当我调用 super.paint() 时,小程序就会闪烁。我正在使用双缓冲(绘制图像,然后渲染该图像),但我认为 super.paint() 正在清除屏幕或其他东西,从而破坏了我的双缓冲。

我知道我应该使用paintComponents(),但由于某种原因,当我调用“currentScreen.Draw(g)”时,它不会显示屏幕的绘制。

谁能帮我这个?

public void paint(Graphics g)
{   

    super.paint(g);//Remove this and it works, but the JApplet background color will be gone, and everything will be white.

    currentScreen.Draw(g);
}
Run Code Online (Sandbox Code Playgroud)

屏幕绘制方法

public void Draw(Graphics g)
{

    if(buffer != null)
        g.drawImage(buffer, 150, 0, null);
    //g.drawString(drawstring, x, y);
}
Run Code Online (Sandbox Code Playgroud)

java swing paint flicker japplet

1
推荐指数
1
解决办法
2576
查看次数

标签 统计

flicker ×1

japplet ×1

java ×1

paint ×1

swing ×1