0

我正在尝试在 JPanel 元素中插入包含图像的 JLabel。结果有点令人惊讶,因为图像(即 JLabel)没有直接放在 JPanel 的顶部,而是前面有一个空行......

有没有办法把它放在 (0,0) 而不是 (0,1) ?

这是我的代码:

Image i; // une image donnée

JFrame f = new JFrame();
f.setTitle("test");
f.setSize(i.getWidth(null), i.getHeight(null));
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setResizable(false);
f.setAlwaysOnTop(false);
f.setUndecorated(false);

JPanel pan = new JPanel();

JLabel l = new JLabel(new ImageIcon(i));
pan.add(l);

f.setContentPane(pan);     
f.setVisible(true);
4

1 回答 1

1

(更新帖子)

尝试使用f.add(pan)而不是f.setContentPane(pan).

(旧帖)

JLabel l = new JLabel(new ImageIcon(i));
f.add(l);

我认为您打算将其添加到面板中:

JLabel l = new JLabel(new ImageIcon(i));
pan.add(l);
于 2013-02-07T13:58:27.110 回答