我正在尝试在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);
答案 0 :(得分: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);