【发布时间】:2017-12-29 11:54:44
【问题描述】:
我在显示文件中的图像时遇到问题:
public class Drawing extends JPanel
{
public void paintComponent(Graphics g)
{
//g.setColor(Color.ORANGE);
//g.fillRect(20, 50, 100, 100);
Image picture = new ImageIcon("test.jpg").getImage();
g.drawImage(picture, 3, 4, this);
}
public static void main(String[] args)
{
Drawing gui1 = new Drawing();
JFrame frame = new JFrame();
frame.setSize(300, 300);
frame.setVisible(true);
frame.add(gui1);
frame.repaint();
}
}
应该很简单。我在类Drawing 的文件夹中有文件test。
我不知道我做错了什么。
paintComponent 有效,我知道这是因为我从这段代码中显示了一个正方形。
我正在使用本书Head First Java。
【问题讨论】:
-
您确定 Image 已创建吗?如果没有,请尝试将路径更改为
/test.jpg -
1.切勿从绘画方法中上传您的图像。上传一次,将其保存到一个变量中,然后在paintComponent 中使用该变量进行绘制。 2. 仅在将所有组件添加到 JFrame 之后 调用
setVisible(true)。 3. 使用资源而不是文件来上传图片。
标签: java paintcomponent