我有一个允许用户调整颜色的 JFrame。Colors
使用反射将此颜色设置为类的静态字段。这是Colors
课程:
public class Colors {
public static Color TextBackground = Color.black;
public static Color TextForeground = Color.white;
}
还有许多其他组件,位于几个 JFrame 中,它们都使用Colors
类的字段。当我手动使它们重新绘制(例如通过调整大小)时,它们都正确地重新绘制。
但是我怎样才能使所有其他组件自动重绘呢?
我尝试了一些看起来很脏的东西来改变 LookAndFeel,但它没有用:
UIManager.setLookAndFeel(UIManager.getLookAndFeel());
更新:我需要在所有其他JFrame 中重新绘制当前可见的组件。