Nimbus Look and feel возвращает значение NULL для UIManager.getColor ("inactiveCaptionBorder") - PullRequest
0 голосов
/ 20 февраля 2012

Я получаю NPE здесь:

Color base = UIManager.getColor("inactiveCaptionBorder");

, в то время как

UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");

установлено для приложения.

Любая информация является значительной.

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 20 февраля 2012

Значение для inactiveCaptionBorder не существует в Nimbus Defaults , похоже, что это значение из SystemColor не применяется напрямую в Nimbus Look and Fee l (я искал String со значением неактивным по умолчанию в Nimbus и нашел там только два значения == inactiveCaption, textInactiveText)

список UIDefaults by @camickr

0 голосов
/ 21 февраля 2012

Btw.Вы должны установить NimbusLookAndFeel следующим образом:

for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
    if ("Nimbus".equals(info.getName())) {
        UIManager.setLookAndFeel(info.getClassName());
        break;
    }
}

для всех не SUN JRE Java 1.7, которые имеют javax.swing.plaf.nimbus.NimbusLookAndFeel и не com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel

...