Я работаю над настройкой приложения Swing путем динамического изменения UIDefaults. Конечная цель - изменить многие из них (цвета, шрифты, размеры, границы и т. Д.) И сохранить результаты для каждого пользователя. Хотя это может придать приложению нестандартный вид, клиент просит и клиент получает.
Единственная проблема, с которой я сталкиваюсь, заключается в том, что графический интерфейс будет обновляться только ОДИН РАЗ. Когда я впервые изменяю свойство пользовательского интерфейса, все замечательно, последующие изменения ни на что не влияют.
// called from the EDT
// uiKeyName points to some ColorUIResource
UIManager.getDefaults().put(uiKeyName, <<color from color picker>>);
SwingUtilties.updateComponentTreeUI(rootWindow);
Это работает один раз, но никогда больше. Идеи? * * 1006