通过JLabel将图像添加到JPanel

时间:2014-01-19 01:00:27

标签: java swing jlabel

我想将imgur中的图像添加到JPanel中。图像没有出现。

UTC = new JLabel("test");
utcImg = new ImageIcon("http://i.imgur.com/pkBtKC5.png");
UTC.setIcon(utcImg);
add(UTC);

仅显示文本“test”。我做错了吗?

由于

编辑:从本地驱动器添加图像以缓解延迟问题。现在它没有加载。文件位于C:\Users\chg1024\Test\src\images

    JLabel utc = new JLabel("test");
    ImageIcon utcImg = new ImageIcon("images/UTC.png");
    utc.setIcon(utcImg);
    add(utc);
    revalidate();

2 个答案:

答案 0 :(得分:3)

ImageIcon(String)将其构造函数参数解释为磁盘上的文件。你可以做到

URL url = new URL("http://i.imgur.com/pkBtKC5.png");
Image image = ImageIO.read(url);
JLabel label = new JLabel(new ImageIcon(image));

但请注意,由于网络延迟和/或资源可用性,从URL加载图像会产生问题。应该首选,例如

JLabel label = new JLabel(new ImageIcon(getClass().getResource("/images/UTC.png")));

答案 1 :(得分:0)

我认为你可以使用这个

ImageIcon(new URL("write your URL here"));