我花了相当多的时间研究如何更改JFrame的背景颜色,但还没有设法使任何东西起作用。我的代码在当前状态下如下所示:
final ImageIcon cardIcon= new ImageIcon("cardImages/aceSpades.gif");
JPanel panel = new JPanel()
{
public void paintComponent(Graphics g) {
super.paintComponent(g);
cardIcon.paintIcon(this, g, 20, 20);
}
};
JFrame window = new JFrame("Deck of Cards");
window.add(panel);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setPreferredSize(new Dimension(200,200));
window.pack();
window.getContentPane().setBackground(Color.green);
window.setVisible(true);
这是我在stackoverflow上所做的所有搜索的结果,因此将不胜感激。我知道我需要更改内容窗格而不是实际框架,但我的所有努力似乎都会导致默认的灰色背景。提前谢谢。
编辑:panel
用于正在加载的图像。编辑 2:听起来panel
阻止了背景的变化。
要添加到框架中的JPanel
会阻止背景色。通过panel.setBackground
设置面板的背景颜色,或通过设置 panel.setOpaque(false)
使面板透明。