нимб как по умолчанию

Я использую java 7 update 17 и netBeans IDE 7.3. Я бы установил nimbus по умолчанию для каждого проекта с графическим интерфейсом, но инструкция на веб-сайте oracle не работает.

как установить нимб по умолчанию для каждого проекта?

Я пишу свой код вручную без использования палитры или перетаскивания.

и эта инструкция не работает http://docs.oracle.com/javase/tutorial/uiswing/lookandfeel/nimbus.html


person Aladdin    schedule 20.03.2013    source источник
comment
Как создаются ваши пользовательские интерфейсы?   -  person MadProgrammer    schedule 20.03.2013
comment
вручную, но я использую среду IDE netbeans без свойства перетаскивания   -  person Aladdin    schedule 20.03.2013
comment
Если вы создадите JFrame, Netbeans установит Nimbus по умолчанию.   -  person MadProgrammer    schedule 20.03.2013
comment
Это не работает, если я использую этот код ........ o поток диспетчеризации событий перед созданием графического пользовательского интерфейса (GUI): import javax.swing.UIManager.*; try { for (LookAndFeelInfo info: UIManager.getInstalledLookAndFeels()) { if (Nimbus.equals(info.getName())) { UIManager.setLookAndFeel(info.getClassName()); перерыв; } } } catch (Exception e) { // Если Nimbus недоступен, вы можете настроить графический интерфейс на другой внешний вид. }   -  person Aladdin    schedule 20.03.2013
comment
графика изменится на нимб, я бы использовал это для каждого проекта без повторного написания этого кода   -  person Aladdin    schedule 20.03.2013
comment
Какую версию Java вы используете? Попробуйте поместить System.out.println в цикл и вывести info.getName   -  person MadProgrammer    schedule 20.03.2013


Ответы (1)


Следующее вызывается в начале основного

try {
    for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
        System.out.println("LAF: " + info.getName());
        if ("Nimbus".equals(info.getName())) {
            UIManager.setLookAndFeel(info.getClassName());
            //break;
        }
    }
} catch (ClassNotFoundException | InstantiationException
    | IllegalAccessException | javax.swing.UnsupportedLookAndFeelException ex) {
    Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE, null, ex);
}

дал

LAF: Metal
LAF: Nimbus
LAF: CDE/Motif
LAF: Windows
LAF: Windows Classic

Он скопирован из кода основной сгенерированной формы JFrame в NetBeans.

После этого

    EventQueue.invokeLater(new Runnable() {
        @Override
        public void run() {
            mainFrame.setVisible(true);
        }
    });

И я предполагаю, что это должно пойти наперекосяк.

Может быть, у вас есть какие-то параметры командной строки, системные настройки Java, уже выбранный LAF и «расширение» Nimbus (пластиковый или около того)?

person Joop Eggen    schedule 20.03.2013