Java - 无法从文件中绘制图像

标签 java image swing file draw

我使用 NetBeans,我想在 jPanel 上显示图像(基本上是为了使其滚动)。 我写了这段代码

    Graphics g=jPanelScrolling.getGraphics();
    File fileBackground = new File("background.jpg");
    Image background;
    try{
        background=ImageIO.read(fileBackground);
        final int WIDTH=background.getWidth(rootPane);            
        final int HEIGHT=background.getHeight(rootPane);
        g.drawImage(background, WIDTH, HEIGHT, rootPane);
    }
    catch(IOException e){
        background=null;
        jPanelScrolling.setBackground(Color.red);  //to test if the image has been succesfully uploaded
    }

但是当我执行它时,它只显示 void jPanel

我怎样才能让它发挥作用?

最佳答案

尝试,

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.*;

public class ImageInFrame {
    public static void main(String[] args) throws IOException {
        String path = "Image1.jpg";
        File file = new File(path);
        BufferedImage image = ImageIO.read(file);
        JLabel label = new JLabel(new ImageIcon(image));
        JFrame f = new JFrame();
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.getContentPane().add(label);
        f.pack();
        f.setLocation(200,200);
        f.setVisible(true);
    }
}

关于Java - 无法从文件中绘制图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21970879/

相关文章:

Android 2.2 扭曲图片颜色?

Java 使用 revalidate() 和 repaint() 无法正常工作

java - 为什么代码 "while (true) new Object()"不会导致OutOfMemoryException?

java - JAXB 和属性排序

java - Spring Security 总是重定向到登录页面

css - 在同一 div 标签中叠加背景图像

java - 以编程方式设置工作日

iphone - 如何从 UIView/UIScrollView 创建图像

java - 我可以突出显示 JLabel 中的文本吗?

java - 如何使用 Swing 和 JLayer<> 在 Java 中制作模糊的 JFrame/JDialog?