Salut,
Si tu ne spécifies pas de layout (tu fais un setLayout(null)) pour le composant contenant ton JPanel et tu le places par la suite en spécifiant ses dimensions avec setBounds(), il sera positionné "librement".
Exemple:
package net.commentcamarche.samples;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Sample extends JFrame {
private static final long serialVersionUID = 1L;
public static void main(String args[]) {
try {
Sample frame = new Sample();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
public Sample() {
super();
getContentPane().setLayout(null);
setBounds(100, 100, 500, 375);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final JPanel panel = new JPanel();
panel.setBounds(158, 99, 264, 148);
getContentPane().add(panel);
}
}
++