1
我正在學習用java編寫代碼,並且最近開始按照我的任務編寫遊戲。 我已經完成了幾乎整個遊戲,但堅持遊戲的動畫部分。 以下是我迄今所做的,使用bufferedimage重新繪製圖像
這是加載圖像TI顯示類,
public class dpmImage {
private BufferedImage dpm1;
private BufferedImage setDpm1;
public dpmImage() { //this is a constructor
try {
dpm1= ImageIO.read(new File("dpm1Load.png"));
} catch (IOException e) {
e.printStackTrace();
}
setDpm1 = dpm1;
}
private BufferedImage dpm1ImageGet() {
return setDpm1;
}
}
下面的代碼是從主類(Main.java)
private Graphics cGraphcs;
cGraphcs.drawImage(dpmImageInstance.dpm1ImageGet(), 0, 0, null);
該代碼工作正常,並顯示圖像。 現在,我可以修改dpmImage
類中的任何內容,但不允許修改Main.java
中的任何內容,並仍然使此圖像具有動畫效果。所以,我在dpmImage
類中創建的BufferedImage
的陣列和陣列中添加第二個圖像如下,
public class dpmImage {
private BufferedImage [] dpm1 = new BufferedImage[2];
private BufferedImage setDpm1;
public dpmImage() { //this is a constructor
try {
dpm1[0]= ImageIO.read(new File("dpm1Load.png"));
dpm1[1]= ImageIO.read(new File("dpm1Load1.png"));
} catch (IOException e) {
e.printStackTrace();
}
setDpm1 = dpm1[0];
setDpm1 = dpm1[1];
}
private BufferedImage dpm1ImageGet() {
return setDpm1;
}
}
,但我不能讓從第一圖像動畫它第二次。有人可以給我任何提示嗎?我不允許更改Main.java
類別
那麼,你有一個數組,但你''setDpm1''初始化了兩次,'dpm1 [1]'。您可能希望能夠根據某些內容返回'dpm1 [0]'或'dpm1 [1]'。 – AxelH