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

Java 2D Graphics get image from URL instead of resource

好的,所以我已经按照 THIS youtube 教程使用 Java 2D 图形进行绘图,但是我该怎么做才能从 URL 而不是从 URL 获取图像资源 ?

如果可以,请更新并 link 我使用新代码,那将是 +

非常感谢您

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,我只是为了某事需要这样做

类似...

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

仅供参考 Class#getResource returns 一个 URL

如果代码是教程中的例子,那么教程是错误的,你应该找一个新的。不要覆盖 paint,而是覆盖 paintComponent。您必须调用 super.paint(或者如果您覆盖了 paintComponent,则调用 super.paintComponent)以维护绘制链并防止可能的图形故障发生。使用 JLabel...

也会更容易

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

URL url = new URL("the-URL");

BufferedImage image = ImageIO.read(url);