Java 2D Graphics从URL而不是资源获取图像

时间:2015-01-13 20:23:28

标签: java drawing 2d java-2d

好吧,我已经关注youtube的THIS教程用Java 2D图形进行绘图,但是我该怎么做才能从URL而不是资源中获取图像呢?

如果可以请更新并将我链接到新代码,那将是+

非常感谢您提前

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.JPanel;

public class Screen extends JPanel {

    private BufferedImage image;

    public Screen() {
        try {
            image = Image.IO.read(getClass().getResourceAsStream("/imagee.png"));
        } catch(IOException e) {
            e.printStackTrace();
        }

        repaint();
    }

    public void paint(Graphics g) {
       g.drawImage(image, 10, 10, null);
    }

}       

我不完全了解Java,我只需要做一些事情

2 个答案:

答案 0 :(得分:1)

像...一样的东西。

image = Image.IO.read(new URL("http://..."));

仅供参考Class#getResource返回URL

如果代码是教程中的一个示例,那么教程是错误的,您应该找到一个新的。请勿覆盖paint,而是覆盖paintComponent。您必须调用super.paint(或super.paintComponent,如果您已覆盖paintComponent),以便维护油漆链并防止可能出现的图形故障。使用JLabel ...

也会更容易

答案 1 :(得分:1)

你应该尝试获取一个URL对象:

  

网址网址=新网址(" -URL");

     

BufferedImage image = ImageIO.read(url);