我有一個允許用戶調整顏色的JFrame。使用反射將這些顏色設置爲類Colors
的靜態字段。這裏是Colors
類:如何重新繪製Java Swing應用程序的所有可見組件?
public class Colors {
public static Color TextBackground = Color.black;
public static Color TextForeground = Color.white;
}
還有許多其他的部件,位於幾個Jframe的,他們Colors
類的所有應用領域。當我手動使它們重新繪製(例如通過調整大小)時,它們都會正確重繪。
但是,如何讓所有其他組件自動重繪?
我試過的東西,似乎髒改變的LookAndFeel,但沒有奏效:
UIManager.setLookAndFeel(UIManager.getLookAndFeel());
更新:我需要重繪組件中的所有其他 Jframe的,當前可見。
_they都使用Colors類的字段_什麼是可怕的設計...你是什麼意思_automatically_?在幀列表中循環並重新繪製它們是更改字段後需要執行的最小操作。 – kleopatra