我正在使用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);
}
}
答案 0 :(得分:3)
这甚至可以编译吗?
frame.getContentPane().add(img, BorderLayout.CENTER);
您正在尝试将BufferedImage添加到JPanel。你可能打算创建一个JPanel并用这样的东西“添加”图像......
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(img, 0, 0, this);
}