2015-09-15 2 views
1

Моя программа начинается с класса, который вызывает JFrame. На кадре я правильно настроил LaF, но когда главный класс называет его, LaF не принимает.Как назвать JFrame и установить внешний вид?

Если я запускаю только файл, он работает. Если я начну проект, это не так.

Код ниже под основным методом на раме.

try { 
     UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
    } catch (ClassNotFoundException ex) { 
     java.util.logging.Logger.getLogger(TelaTur.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (InstantiationException ex) { 
     java.util.logging.Logger.getLogger(TelaTur.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (IllegalAccessException ex) { 
     java.util.logging.Logger.getLogger(TelaTur.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (javax.swing.UnsupportedLookAndFeelException ex) { 
     java.util.logging.Logger.getLogger(TelaTur.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } 

Если основной класс называет его:

TelaTur tela = new TelaTur(); 
    tela.setVisible(true); 

Это не займет. Открытие только файла (на Netbeans Shift + F6) принимает LaF.

I'm ищет ответ на:

Как настроить внешний вид из основного класса?

+5

Попробуйте запустить setLookAndFeel перед созданием и показом графического интерфейса. –

+1

Чтобы лучше помочь, опубликуйте [MCVE] или [Short, Self Contained, Correct Example] (http://www.sscce.org/). В то время как ** возможно ** установить внешний вид после создания элементов GUI, большинство применений настройки внешнего вида могут быть сделаны за один раз до их появления, поэтому я подозреваю, что наилучшим решением является предложение @GilianJoosen .. –

ответ

1

Этот ответ основан на том, что @GilianJoosen написал в комментариях.

Я создал метод с именем setLookAndFeel() и вызвал его перед методом initComponents() в конструкторе.

Спасибо за ответы.

Смежные вопросы