我无法显示图像。我尝试了ImageIO和ImageIcon。
这是我的代码:
public TestGUImain()
{
JFrame frame = new JFrame("Basic Window");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800,600);
frame.setVisible(true);
JPanel panel = new JPanel();
panel.setLayout(null);
frame.add(panel);
JLabel lblText = new JLabel("Hello World", JLabel.CENTER);
lblText.setBounds(10, 10, 100, 200);
panel.add(lblText);
ImageIcon image = new ImageIcon(getClass().getResource("150_leading_side_prep.jpg"));
JLabel lblImage = new JLabel(image, JLabel.CENTER);
lblImage.setBounds(0, 0, 800, 600);
panel.add(lblImage);
}
P.S。如果JLabel
更改为包含文本,则将显示。图像存储在名为resource的源文件夹中,与src文件夹处于同一级别。
答案 0 :(得分:0)
您需要将图像存储在src文件夹中,而不是与它相同的级别。您还需要在构造函数的末尾执行frame.setVisible(true),或使用revalidate();
和repaint();
刷新窗口。