我试图与Java的一个非常基本的游戏,我有一个上显示图像的麻烦JFrame
。 这在过去,我已经工作,现在还不是,我不能看到我做错了什么。
我曾尝试打印当前工作目录和改变,我让我的形象相匹配。 很可能,这个问题是没有得到的图像,因为我的(filefinder或的FileReader或类似的东西)可以找到它没有问题,但我不能正确地它(添加ImageIcon
)到JLabel
,或者到JFrame
。
这是我的代码...
JFrame frame = new JFrame("no image");
ImageIcon image = new ImageIcon("C:/Documents and Settings/user/Desktop/hi/xD/JavaApplication2/image.png");
JLabel imagelabel = new JLabel(image);
frame.add(imagelabel);
在JFrame
已经setVisible(true)
和pack()
可能有人请帮助我了解什么是错的。
你的问题就在这里:
ImageIcon image = new ImageIcon("C:/Documents and Settings/user/Desktop/hi/xD/JavaApplication2/image.png");
JLabel imagelabel = new JLabel(character);
您创建一个ImageIcon“形象”,但你创建一个“字”您的JLabel。
它应该是:
JLabel imagelabel = new JLabel(image);
尝试,
ImageIcon image = new ImageIcon("c:\\path\\image.png");
imagelabel = new JLabel(character, image, JLabel.CENTER);
frame.add(imagelabel);
看看教程- 如何使用图标
import javax.awt.*;
import java.awt.*;
import java.awt.event*;
//class name image
class image {
image()
//constructor {
Frame f=new Frame("Image");
//Frame
f.setSize(500,500);
f.setVisible(true);
Panel p =new Panel();
//Panel
f.add(p);
p.addLayout(null);
ImageIcon ii=new ImageIcon("set your image path");
//ImageIcon is used to image Display .
Label l =new Label(ii);
p.add(ii);
p.setBounds(set you bounds);
//Like that(20,20,500,40);
}
public static void main(String [] args) {
image obj = new
}
}