如何在多个 JFrame 之间保留背景颜色

How to preserve background colors between Multiple JFrames

在我的程序中,我有一个改变框架颜色的方法。我还有一种方法可以打开一个新的 Jframe 用作应用程序的设置菜单。但是,初始 jframe 中设置的值将不会保留。

如何保留初始 Jframe 中设置的颜色并在创建时将它们加载到设置对象中?

使用 Color 参数向新的 JFrame 添加构造函数,并在调用默认构造函数后设置背景颜色。

public SecondJFrame(Color c)
{
    this();
    this.getContentPane().setBackground(c);
}

另一种方法是在初始 JFrame 中初始化第二个 JFrame 后设置背景颜色:

SecondJFrame secondJFrame = new SecondJFrame();
secondJFrame.getContentPane().setBackground(this.getContentPane().getBackground());
secondJFrame.setVisible(true);

用户单例设计模式添加到它的设置 class 你有如下

public class SettingManager{
     private static YourSettingClass setting = null ; 
     private SettingManager(){}
     public static YouSettingClass getSetting(){
              if(setting==null){
                 setting = new YourSettingClass(); 
                 return setting; 
              }
         return setting ; 
     }
     // any utility method to change your setting will be here 

}

在每个 JFrame 构造函数中,您可以获得应用程序现在全局设置

YourSettingClass setting = SettingManager.getSetting() ;