java-谁能告诉我为什么这张图片无法加载?

标签 java swing

我正在使用 netbeans 并尝试从我的磁盘加载图像。该程序没有给我任何错误,但框架没有弹出。 ?我尝试使用另一个仅包含文本的标签,效果很好。我不认为我调用图像的方法有什么问题,只是由于某种原因框架不会显示?

import java.applet.Applet;
import java.awt.*;
import java.awt.image.*;
import java.io.*;
import java.net.URL;
import javax.imageio.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Play {

    /**
     * @param args
     *            the command line arguments
     */
    public static void main(String[] args) {
        JFrame frame = new JFrame("window");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JLabel emptyLabel = new JLabel("yo");
        BufferedImage img = null;
        try {
            img = ImageIO.read(new File("C:\\Users\\anon\\Desktop\\alien.png"));
        } catch (IOException e) {
        }

        emptyLabel.setPreferredSize(new Dimension(175, 100));
        frame.getContentPane().add(img, BorderLayout.CENTER);
        frame.pack();
        frame.setVisible(true);
    }

}

最佳答案

这能编译吗?

frame.getContentPane().add(img, BorderLayout.CENTER);

您正在尝试将 BufferedImage 添加到 JPanel。您可能打算创建一个 JPanel 并使用类似这样的内容“添加”图像...

protected void paintComponent(Graphics g) {
    super.paintComponent(g);
    g.drawImage(img, 0, 0, this);        
}

关于java-谁能告诉我为什么这张图片无法加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21711332/

相关文章:

java - 如何使用 Swing 通过 Java 桌面应用程序上的图标运行 JAR 文件?

java - localhost 的 getCanonicalHostName 适用于 Win 7 但不适用于 XP?

Java Server Faces Ajax 请求无法正常工作

java - 从 InputStream 读取非泛型 HashMap 时发出警告

java - 双迭代器循环

java - Swing 文本框中的 Unicode 字符 (ரு)

java - 重新定位按钮并将其更改为图像?

java - 在不同的类文件中将 JScrollPane 设置为 JTextArea

java - 在 Java 中,如何检查输入是否为数字?

java - 如何在 JPanel 上覆盖、调整大小和居中组件?