精灵没有加载

时间:2015-05-27 02:52:32

标签: java image graphics

我和合作伙伴一直在为我们班级制作游戏。虽然我们能够制作形状,但我们无法加载精灵。我不确定所有这些代码是否必要,但它似乎是必要的类,我们的代码中的任何其他帮助都将非常受欢迎。

foreach(var file in meh._record.files)
{
    foreach(var line in file.lines)
    {
        //code
        string addr, dat;
        addr = line.address;
        dat = line.data;
        //so on...
    }
}

我的合作伙伴完成了大部分代码,而且我对java中的图形编程知之甚少。我也试图将这两个类别分开。

import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class BoardGraphics extends JPanel{
public BoardGraphics(){
    initGraphics();
}
//Image Url's
String grassTS = "src/Resources/Sprites/GrassTile_1.png";
//Image objects

BufferedImage grassTI;

public void layTiles(Graphics g){
    for(int i = 0; i < 21; i++){
        for(int k = 0; k < 21; k++){

        }

    }
}

public void loadImage(String url, Image image){

    try {
        image = ImageIO.read(new File(url));
        if(image != null){
            System.out.println(url + ", has been loaded!");
        }
    }catch (IOException e){
        e.printStackTrace();
    }
    }

public void initGraphics(){

    setBackground(Color.WHITE);
    setDoubleBuffered(true);

    loadImage(grassTS, grassTI);

}
public void drawPlayer(Graphics g){
    g.fillOval(5,5,32,32);
}

@Override
protected void paintComponent(Graphics g) {
    super.paintComponent(g);

    g.setColor(Color.BLACK);

    g.drawImage(grassTI,21,21,null);

    drawPlayer(g);

    layTiles(g);

}
}

1 个答案:

答案 0 :(得分:0)

我发现问题出在loadImage方法中,因为它正在将图像加载到新的图像对象中。