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

时间:2015-04-23 20:03:29

标签: java swing colors jframe

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

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

2 个答案:

答案 0 :(得分:1)

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

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

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

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

答案 1 :(得分:0)

用户singlton设计模式将您拥有的设置类添加到其中

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() ;