dcsimg

Why doesn't setBackground() change the background of my JLabel?

John Zukowski

By default, Swing labels are transparent, letting the background of the container bleed through. If you wish to set the background of a JLabel, you need to make the label opaque with setOpaque(true), in addition to setBackground(newColor).