Java如何设置JFrame背景

Java how to set JFrame background

我将我的原始代码简化为这个有问题的部分。我知道这看起来很简单,这就是为什么当它不能按我的预期工作时它让我感到困惑。它没有编译或运行时错误,但我未能将背景颜色设置为默认值以外的任何颜色。我已经尝试创建一个新的 Color 实例并反转 setVisible 和 setBackground 方法,这不会有什么不同,而且我的 Google 搜索不会显示任何与我所做的不同的东西。

import javax.swing.JFrame;
import java.awt.Color;

public class Main extends MyFrame{
    public static void main(String[]args){
        //new MyFrame();
        JFrame frame=new JFrame("Title");
        frame.setSize(500,500);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setBackground(Color.red);
        frame.setVisible(true);
    }
}

代码:

import javax.swing.JFrame;
import java.awt.Color;

public class Main extends MyFrame {
    
    public static void main(String[]args){
        JFrame frame = new JFrame("Title");
        frame.setSize(500,500);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().setBackground(Color.RED); // <-----
        frame.setVisible(true);
    }
}

结果: