image = new ImageIcon()显示不出图片

HJH18902421778 2017-12-10 10:01:51
[/quote]

package imagetext;

import java.awt.*;
import javax.swing.*;

public class ImageTest
{
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame = new ImageFrame();
frame.setTitle("ImageTest");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}

class ImageFrame extends JFrame
{
public ImageFrame()
{
add(new ImageComponent());
pack();
}
}

class ImageComponent extends JComponent
{
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 200;

private ImageIcon image;

public ImageComponent()
{
image = new ImageIcon("C:\\Users\\UPC\\Desktop\\eclipse\\text\\src\\imagetext\\blue-ball.gif");
}

public Dimension getPreferredSize() { return new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT); }
}

结果显示是空白的
能帮忙看看是哪里出了问题吗
...全文
1166 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
package imagetext; import java.awt.*; import javax.swing.*; public class ImageTest { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { JFrame frame = new ImageFrame(); frame.setTitle("ImageTest"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }); } } class ImageFrame extends JFrame { /** * */ private static final long serialVersionUID = -7919155032467335029L; public ImageFrame() { this.getContentPane().add(new ImageComponent()); pack(); } } class ImageComponent extends JComponent { /** * */ private static final long serialVersionUID = 1L; private static final int DEFAULT_WIDTH = 300; private static final int DEFAULT_HEIGHT = 200; private Image image = null; public ImageComponent() { image = new ImageIcon("C:\\Users\\UPC\\Desktop\\eclipse\\text\\src\\imagetext\\blue-ball.gif").getImage(); } public Dimension getPreferredSize() { return new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT); } @Override protected void paintComponent(Graphics g1) { int x = 0; int y = 0; Graphics g = (Graphics) g1; if (null == image) { return; } g.drawImage(image, x, y, image.getWidth(this), image.getHeight(this), this); g = null; } }
weixin_41094820 2017-12-12
  • 打赏
  • 举报
回复
好像JFrame 不能直接放图片 你试试把图片先装进JLabel 在把label 装进JFrame

58,453

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧