ユーザーが色を調整できる 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 のコンポーネントを再描画する必要があります。