Bonjour à tous,
Je voudrais savoir comment faire pour pouvoir actualiser un tableau contenant des JLabel. Voici mon code:
"setText" permet normalement d'actualiser un JLabel (cela marche très bien sur la variable "txt") mais elle n'a aucun effet sur les JLabel du tabelau.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 import java.awt.GridLayout; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class test2 { public static void main(String[] args){ final JLabel[] lbl = new JLabel[5]; final JButton btn = new JButton("++"); final JPanel conteneur = new JPanel(); final JPanel pan = new JPanel(); JFrame fen = new JFrame(); final JLabel txt = new JLabel("Test"); fen.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); fen.setLocationRelativeTo(null); fen.setSize(100, 100); fen.setVisible(true); pan.setLayout(new GridLayout()); for(JLabel l:lbl){ l = new JLabel("0"); pan.add(l); } btn.addActionListener(new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { for (int i = 0; i< lbl.length; i++) { lbl[i] = new JLabel(); lbl[i].setText("1"); System.out.print(lbl[i].getText()); } txt.setText("test2"); } }); conteneur.add(txt); conteneur.add(pan); conteneur.add(btn); fen.setContentPane(conteneur); } }
J'ai essayé plusieurs chose:
- "removeAll" et "revalidate"
- "updateUI"
- "repaint"
- ...
aucune de ces méthodes n'a fonctionnées (ou je les ai mal utilisées).
Merci de votre aide.







Répondre avec citation
Partager