私は Java プログラミングに関する本を読んでいます。ビット イメージまたは何かをロードしていることを理解していませんでした。ここにコードがあります。
Toolkit tk = Toolkit.getDefaultToolkit();
image = tk.getImage(getURL("castle.png"));
get URl とは何ですか? イメージが実際にどこにあるのか、または何かを伝えると思いますか?
どうすれば画像を見つけることができますか?そのまま実行するとこのエラーが発生します-
Uncaught error fetching image:
java.lang.NullPointerException
完全なコードは次のとおりです-
package randomshapes;
import java.awt.*;
import java.util.*;
import javax.swing.*;
import java.net.*;
public class RandomShapes extends JFrame{
private Image image;
public static void main(String [] args){
new RandomShapes();
}
public RandomShapes(){
super("DrawImage");
setSize(600,600);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Toolkit tk = Toolkit.getDefaultToolkit();
image = tk.getImage(getURL("castle.png"));
}
private URL getURL(String filename){
URL url = null;
try{
url = this.getClass().getResource(filename);
} catch (Exception e){ }
return url;
}
public void paint(Graphics g){
Graphics2D g2d = (Graphics2D) g;
g2d.setColor(Color.WHITE);
g2d.fillRect(0, 0, getSize().width, getSize().height);
g2d.drawImage(image, 0, 40, this);
}
}