Probléme avec déplacement de JPanel
Bonjour,
J'essai de développer une application dans laquelle :
Je dois déplacer un JPanel.
En effet, j'arrive bien à déplacer un JPanel concu à l'aide du concepteur d'interface de JBuilder, mais dés que j'en créer un moi même par le code, je n'arrive plus à le déplacer, il semblerait qu'il détecte bien les nouveaux coordonnées que le lui donne, mais on ne voit rien, le JPanel ne bouge pas de place.
Voici le bout de code quand je créer mon JPanel :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
JPanel pannel = new JPanel();
pannel.setBackground(Color.YELLOW);
JLabel nvolabel = new JLabel();
nvolabel.setText("toto");
pannel.add(nvolabel);
ImageIcon icone = new ImageIcon("photos/toto.jpg");
JLabel jLabel2 =new JLabel(icone);
pannel.add(jLabel2);
XYLayout xYLayout3 = new XYLayout();
pannel.setLayout(xYLayout3); // on lui ajoute un layout
this.getContentPane().add(pannel, new XYConstraints(500, 500, 200, 200));
pannel.addMouseListener(new principale_pannel_mouseAdapter(this)); |
Voici le bout de code qui a lieu quand je clique sur mon bouton :
Code:
1 2 3 4 5
|
public void jButton2_mouseClicked(MouseEvent e) {
pannel.setLocation(513,500);
this.getContentPane().repaint();
} |
Quelqu'un saurait-il pourquoi le déplacement du JPanel "pannel" ne s'effectue pas ?
Merci beaucoup ! A bientot...
re :Probléme avec déplacement de JPanel
Merci pour ton aide !
Ton aide m'a permis d'avancer, en effet maintenant le setbounds fonctionne et c'est deja ca.
Le probléme restant est que setbounds... ne fonctionne qu'a la création de l'objet (pannel), il me le positionne donc bien.
Hors, lorsque je je decide de le faire bouger apres ca création (en cliquant sur un bouton par exemple), il ne bouge pas mais je n'ai pas d'erreur. Pourtant j'ai bien effectuer un repaint sur le conteneur qui contient mon pannel.
Quand je clique sur le bouton voici le code qui se déclenche :
Code:
1 2 3 4 5 6
|
public void jButton2_mouseClicked(MouseEvent e) {
pannel.setBounds(60,60,600,50);
jpanelarbre.repaint(); // le jpanelarbre contient le pannel
this.repaint(); // this contient le jpanelarbre
} |
Quelqu'un aurait-il une idée pour régler le probléme ?
Merci d'avance !