2015-07-21 2 views
0

Я использую форму net beans для создания апплета. Апплет полагается на JFileChooser. Если я пишу программу как приложение вместо апплета, выбор файла выглядит по-другому. Почему один и тот же код создает различные поисковые файлы, написанные в виде апплета или приложения? Кроме того, как я могу изменить внешний вид моего выбора файлов из апплета, чтобы выглядеть как выборщик файлов из приложения?Изменение внешнего вида JFileChooser

Применение выбора файла:

enter image description here

Апплет выбора файла:

enter image description here

+0

Вы говорите, что это только файл выбора, который выглядит иначе? – Holger

+0

@ Правильный адрес – pmaurais

+0

У вас есть вызов 'UIManager.setLookAndFeel()' в вашем приложении? Если это произойдет, когда некоторые части пользовательского интерфейса уже созданы, эти части будут выглядеть иначе, чем часть, созданная впоследствии. Вы можете вызвать ['updateUI()'] (http://docs.oracle.com/javase/8/docs/api/javax/swing/JComponent.html#updateUI--) для компонента, чтобы обновить его до текущего смотреть и чувствовать. Вопрос в том, какая часть показывает текущий внешний вид, выбор файла или остальную часть пользовательского интерфейса ... – Holger

ответ

0

При использовании в приложении приложения UIManager.setLookAndFeel(…) существующие компоненты не обновляются автоматически, так как не существует глобального реестра всех существующих компонентов. Следовательно, эти компоненты будут выглядеть иначе, чем компоненты, созданные впоследствии. Вы можете вызвать updateUI() на компонент, чтобы обновить его до текущего вида. Существует также метод утилиты SwingUtilities.updateComponentTreeUI(…), который будет вызывать updateUI() по всему дереву компонентов, рекурсивно.

Но, как правило, лучше установить желаемый внешний вид как можно раньше, желательно перед созданием любого компонента, чтобы избежать необходимости обновления существующих компонентов.

0

Вы должны быть в состоянии сделать что-то вроде этого:

SwingUtilities.updateComponentTreeUI(JFileChooser); 
Смежные вопросы