• ベストアンサー

ダブルバッファリング

ダブルバッファリングを使ったつもりですが、キー操作するたびに画面がチカチカします。 特に <applet code="test.class" width="1600" height="600"> とした場合、repaint()メソッドを何回も呼んだ時に激しいです。 以下、ソースですが間違っているでしょうか? // ダブルバッファリング private Image imgOff; // オフイメージ private Graphics graOff; // オフグラフィックス public void paint(Graphics g){ if (imgOff == null) { Dimension dim = getSize(); imgOff = createImage( dim.width, dim.height ); graOff = imgOff.getGraphics(); } // ここに何か書く 例) graOff.setColor( new Color(255,255,255) ); graOff.fillRect(0, 0, 1600, 600); // 画面に反映 g.drawImage(imgOff,0,0,this); }

質問者が選んだベストアンサー

  • ベストアンサー
  • jyugemu55
  • ベストアンサー率68% (11/16)
回答No.2

多分 paint() メソッド内で imgOff を作成していることが原因だと思います。 paint() メソッドは、g.drawImage(imgOff,0,0,this); だけにして、 imgOff の作成はほかの場所でやってみてください。

その他の回答 (1)

  • shred
  • ベストアンサー率35% (25/70)
回答No.1

updateメソッドはオーバーライドしていますか?

関連するQ&A