comment changer le contenu d'un JLabel

comment changer le contenu d'un JLabel - Java - Programmation

Marsh Posté le 22-11-2008 à 11:10:33    

salut,
j'ai créé une fenêtre qui contiens un JLabel un JTextfield et un boutton.
je veux changer l'affichage de JLabel en cliquant sur le bouton.
j'ai essaye le JLabel.setText()
j'ai ai même essaye de retirer le Jlabel pour le remplacer par une autre avec JFrame.remouve()
mais cela non plus nne marche pas.
et le plus bizarre c que je peux retirer le bouton ou le champ texte le seule élément que je peux retirer c le JLabel.
merci.

Reply

Marsh Posté le 22-11-2008 à 11:10:33   

Reply

Marsh Posté le 22-11-2008 à 19:37:29    

salut, tu peux faire voir ton code ?

Reply

Marsh Posté le 23-11-2008 à 20:03:56    

public class inter extends JFrame implements ActionListener{
  JTextField j;
  JButton b;
  JLabel l;
  public inter(){
   l=new JLabel("the worst area" );
   b=new JButton("changer" );
   b.addActionListener(this);
   j=new JTextField(20);    
   j.setVisible(true);
   this.setLayout(new FlowLayout());
   this.add(l);
   this.add(j);
   this.add(b);
   l=new JLabel("the worst area" );
   this.setTitle("diagnostic" );
   this.setSize(300, 300);
   this.setVisible(true);
  }
  @Override
  public void actionPerformed(ActionEvent e) {
   // TODO Auto-generated method stub
   if (e.getSource()==b){
    this.l.setText(j.getText());
   }
   
  }
   
 
}

Reply

Marsh Posté le 23-11-2008 à 20:07:08    

je ne sais pas pourquoi sa n'a pas marché. le plus bizarre est que si j'affiche le contenu du JLabel sur la console je perçois qu'il a belle et bien change mais sur la fenêtre sa ne change pas.
pour aboutir au résultat voulu j'ai mis l'étiquette dans dans un panneau et à chaque fois je change de panneau et sa fait l'affaire pour le moment.
je vous remercie encore.

Reply

Marsh Posté le 24-11-2008 à 09:29:41    

Ton l ce pointe pas vers le label affiché vu que sur l tu instancie un 2e JLabel mais que tu ne le met pas dans ton panel.


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
Reply

Marsh Posté le 26-08-2012 à 19:41:08    

tu peut enlever le "this" dans la methode Action performed

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed