Я использую Nimbus L & F.
Используя код из @Romain Hippeau, мне пришлось использовать UIManager.getLookAndFeelDefaults()
вместо UIManager.getDefaults()
и использовать возвращенную ссылку на put
измененные значения:
int szIncr = 5; // Value to increase the size by
UIDefaults uidef = UIManager.getLookAndFeelDefaults();
for (Entry<Object,Object> e : uidef.entrySet()) {
Object val = e.getValue();
if (val != null && val instanceof FontUIResource) {
FontUIResource fui = (FontUIResource)val;
uidef.put(e.getKey(), new FontUIResource(fui.getName(), fui.getStyle(), fui.getSize()+szIncr));
}
}
По некоторым причинам, он не работает с L & F по умолчанию ... (основываясь на ограниченных тестах, которые я выполнил)