Настройка глобального шрифта для приложения Java
Мне нужно установить шрифт по умолчанию для моего приложения. Есть ли способ сделать это, который не зависит от LaF?
2 ответов
понял это:
звонок с: setUIFont (new javax.swing.plaf.FontUIResource(new Font("MS Mincho",Font.PLAIN, 12)));
private static void setUIFont(javax.swing.plaf.FontUIResource f)
{
java.util.Enumeration<Object> keys = UIManager.getDefaults().keys();
while (keys.hasMoreElements())
{
Object key = keys.nextElement();
Object value = UIManager.get(key);
if (value instanceof javax.swing.plaf.FontUIResource)
{
UIManager.put(key, f);
}
}
}
для лучшего контроля над тем, как / какие шрифты заменить-независимым способом LAF, но контролируемым per-laf-посмотрите на jgoodies Looks project
http://java.net/projects/looks
Он позволяет менять местами все FontSets (это коллекция семантических шрифтов, таких как control, dialog, message) во время выполнения.