Java 背景色在蓝色J中不会改变
我已经写了一个代码,在一个框架中有一个标签和一个按钮。我也改变了背景,但从未改变Java 背景色在蓝色J中不会改变,java,swing,background,jframe,awt,Java,Swing,Background,Jframe,Awt,我已经写了一个代码,在一个框架中有一个标签和一个按钮。我也改变了背景,但从未改变 import javax.swing.*; import java.awt.*; import javax.swing.border.*; public class Frames { JFrame Main_Menu=new JFrame("MAIN MENU");JFrame CIRCUMFERENCE=new JFrame("CIRCUMFERENCE");
import javax.swing.*;
import java.awt.*;
import javax.swing.border.*;
public class Frames
{
JFrame Main_Menu=new JFrame("MAIN MENU");JFrame CIRCUMFERENCE=new JFrame("CIRCUMFERENCE");
JFrame AREA=new JFrame("AREA");JFrame PERIMETER=new JFrame("PERIMETER");JFrame SETS=new JFrame("SETS");
JFrame FUNDAMENTAL_OPRATIONS=new JFrame("FUNDAMENTAL OPRATIONS");JFrame POWER_AND_ROOTS=new JFrame("POWER_AND_ROOTS");
void Main_Menu()
{
JPanel contentPane = (JPanel) Main_Menu.getContentPane();
contentPane.setLayout(new BorderLayout(10,10));
contentPane.setBorder(new EmptyBorder(300, 150, 300, 150));
contentPane.setLayout(new GridLayout(4, 4));
JPanel buttonPanel = new JPanel(new GridLayout(8,8));
contentPane.add(Labels.Main_MENU,BorderLayout.NORTH);
contentPane.add(Buttons.SETS,BorderLayout.SOUTH);
Main_Menu.setBackground(Color.YELLOW);
Main_Menu.pack();
Main_Menu.setVisible(true);
}
}
实际上,您应该通过getContentPane.setBackgroundColor.YELLOW设置内容窗格的背景色:
也可以考虑使用变量命名约定;例如,主菜单应命名为主菜单。
1参见2请了解用于类、方法和属性名称的大小写,并一致使用它们。contentPane.setLayoutnew GridLayout4,4。。contentPane.addLabels.Main_菜单,BorderLayout.NORTH;毫无意义。如果布局为GridLayout,则无法有效使用BorderLayout约束!顺便说一句,该代码不可编译。为了更快地获得更好的帮助,请发布一个最小的完整且可验证的示例。import java.awt.Color;
import java.awt.Dimension;
import java.awt.EventQueue;
import javax.swing.JFrame;
public class Frames extends JFrame {
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
new Frames();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public Frames() {
setSize(new Dimension(100, 100));
setTitle("MAIN MENU");
getContentPane().setBackground(Color.YELLOW);
setVisible(true);
}
}