我有一个 jLabel,它最初的 setOpaque 默认设置为 false。当我将标签的背景颜色设置为某种颜色并将 setOpaque 设置为 true 时,它不会显示颜色。为什么即使将 setOpaque 设置为 ture,它也不显示颜色?
这就是我想要做的。
JLabel key = values[i];
key.setBackground(Color.red);
key.setOpaque(true);
对我来说就像一个魅力:
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();
}
});
}
}
导致:
试试这样: -
JLabel key = values[i];
key.setOpaque(true);
key.setBackground(Color.red);