3

デフォルトで setOpaque が false に設定されている jLabel があります。ラベルの背景色を特定の色に設定し、setOpaque を true に設定すると、色が表示されません。setOpaque が ture に設定されているにもかかわらず、色が表示されないのはなぜですか?

これが私がやろうとしていることです。

JLabel key = values[i];
key.setBackground(Color.red);
key.setOpaque(true);
4

2 に答える 2

2

私にとって魅力のように機能します:

import java.awt.Color;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingUtilities;

public class TestJLabel {

    protected void initUI() {
        JFrame frame = new JFrame(TestJLabel.class.getSimpleName());
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JLabel key = new JLabel("Some opaque label with a yellow background.");
        key.setBackground(Color.YELLOW);
        key.setOpaque(true);
        frame.add(key);
        frame.pack();
        frame.setVisible(true);

    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                new TestJLabel().initUI();
            }
        });
    }

}

その結果:

ここに画像の説明を入力

于 2013-09-11T17:30:16.000 に答える
0

このようにしてみてください:-

JLabel key = values[i];
key.setOpaque(true);
key.setBackground(Color.red);
于 2013-09-11T14:49:16.750 に答える