JLabel adden bei einem MouseEvent

Tobi3000

Mitglied
Java:
private void paintToken(JPanel inPanel, /*Token inToken */  int Number, Color inColor) {
            	inPanel.setBackground(TOKENBGCOLOR);
            	JLabel lbl = new JLabel(Integer.toString(Number));
            	lbl.setLayout(null);
            	lbl.setForeground(inColor);
            	lbl.setLocation(5, 5);
            	inPanel.add(lbl);
            }

Wenn ich diesen Code in Bespielsweise bei der Initialisierung aufrufe, dann wird das Label korrekt angezeigt. Wenn ich allerdings diese Code bei einem MouseClickEvent aufrufe, färbt sich zwar der Hintergrund korrekt, das Label wird aber nicht dargestellt. Es handelt sich dabei um das gleiche Panel, welches auch das Event auslöst. Woran liegt das und gibt es alternative Lösungen?
 
Hallo Tobi,

herzlich willkommen im Forum 🙂.
Das Problem beim Panel ist, dass es bereits sichtbar ist und daher nicht gleich merkt, wenn ein Label hinzukommt. Versuch's mal mit [c]inPanel.revalidate()[/c].

Gruß,
André
 

Zurück
Oben