установить другой внешний вид в Swing Application Framework jsr 296 - PullRequest
0 голосов
/ 22 июля 2011

Мое приложение использует SAF (JSR 296).Я хочу использовать разные стили на разных платформах:

По умолчанию (Java) для Linux

И система (родная) для Windows.

ДОБАВЛЕНО : До сих пор я жестко запрограммировал L & F для ОС Windows в методе startup () моего класса Application (как предложено Джой и Томпсоном): </p> <pre><code>if (SystemUtils.IS_OS_WINDOWS) { UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName()); }

В файле application.properties,указан L & F по умолчанию.

Нет лучшего способа?

Ответы [ 3 ]

3 голосов
/ 22 июля 2011

По умолчанию (Java) для Linux...system (native) для Windows.

if (System.getProperty("os.name").startsWith("Windows")) {
    try {
        UIManager.setLookAndFeel(
            UIManager.getSystemLookAndFeelClassName());
    } catch (Exception e) {
        e.printStackTrace();
    }
}

Устанавливает внешний вид Windows для собственного PLAF, сохраняя (по умолчанию) Metal PLAF для Linux / Unix и используя значение по умолчаниюдля Mac, который нам достоверно известен, называется:

com.apple.laf.AquaLookAndFeel

Я, вероятно, рекомендовал бы Nimbus для машин Linux / Unix.Металл PLAF - это ... последнее тысячелетие.

3 голосов
/ 22 июля 2011

Попробуйте это:

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

Он будет настраиваться на основе системы, в которой работает ваше приложение.

0 голосов
/ 22 июля 2011

вам не нужно так много кода для этого.Вы можете создать файл свойств для конкретной платформы или использовать «системный» LnF в свойствах приложения.Больше информации на http://kenai.com/projects/bsaf

...