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);
}
}
结果:
我将我的原始代码简化为这个有问题的部分。我知道这看起来很简单,这就是为什么当它不能按我的预期工作时它让我感到困惑。它没有编译或运行时错误,但我未能将背景颜色设置为默认值以外的任何颜色。我已经尝试创建一个新的 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);
}
}