BufferedImage と JPanel に少し問題があります。2D アニメーションを使用したゲームを作成しています。
基本的に、写真をループする animationHandler があり、回転に応じて正しく表示されます。しかし、問題は、写真をロードすると、Jpanel が何も描画しないことです。カスタムペイントメソッドをコメントアウトしてもイベントは問題になりません.paintComponentメソッドは何も描画せず、paintCompontentメソッドをスキップするようです. ゲームはクラッシュせず、タイマーはまだ実行中ですが、拡張された JPanel で paintComponent メソッドを使用しません。
タイマーを含むクラス - JPanel.repaint(); を介して JPanel を呼び出します。
これがloadImgメソッドです
/**
* Test method to check animationHandler and bufferedImgs
*/
private void loadImages() {
BufferedImage b_1;
BufferedImage b_2;
BufferedImage b_3;
BufferedImage b_4;
BufferedImage b_5;
BufferedImage[] imgs = new BufferedImage[5];
try {
b_1 = ImageIO.read(new File("warlock1.png"));
b_2 = ImageIO.read(new File("warlock2.png"));
b_3 = ImageIO.read(new File("warlock3.png"));
b_4 = ImageIO.read(new File("warlock4.png"));
b_5 = ImageIO.read(new File("warlock5.png"));
imgs[0] = b_1;
imgs[1] = b_2;
imgs[2] = b_3;
imgs[3] = b_4;
imgs[4] = b_5;
animationHandler.addAnimation(imgs);
} catch (Exception e) {
e.printStackTrace();
}
}
乾杯!