Nie działająca metoda setBackground dla JLabel

0

To mój pierwszy temat i post, więc witam wszysktich!

Nie wiem czemu, ale nie mogę zmienić tła dla etykiety. Oto niewielki ( :P ) kawałek kodu:

lblOperacjeNaIntach.setBackground(kolorTlaEtykiet);

Myślę, że większej ilości kodu nie ma co przesyłać, bo kod całego pliku jest dość ługi ;)

Korzystam z Javy 1.6_20 w środowisku Windows, lblOperacjeNaIntach jest typu JLabel, a obiekt kolorTlaEtykiet jest inicjowany w konstruktorze okna.

lblOperacjeNaIntach jest ciałem klasy dziedziczącej po JFrame.

Czy ktoś z was spotkał się już z takim problemem?

0

Ja się zetknąłem

/* Obiekty klasy JLabel nie reagują na zmianę koloru tła metodą setBackground();
 * Decydujący jest argument przekazany do metody setOpaque(...)
 */
import javax.swing.*;
import java.awt.*;

public class Background extends JFrame
{
    public static void main(String[] args)
    {
    	new Background();
    }
    //------------------------
    public Background()
    {
        setLayout(new FlowLayout());
        JLabel l=new JLabel("setOpaque(true)",JLabel.CENTER);
        l.setBackground(Color.red);
        l.setOpaque(true);
        add(l);

        l=new JLabel("setOpaque(false)",JLabel.CENTER);
        l.setBackground(Color.red);
        l.setOpaque(false);
        add(l);

        pack();
        setVisible(true);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

0

Heh, kto by pomyślał :)

Dzięki za odpowiedź. Korzystając z setOpaque(true); wszystko jest ok.

1 użytkowników online, w tym zalogowanych: 0, gości: 1