Есть ли способ заставить Nimbus Look&Feel визуализировать свои собственные украшения окон для JFrame верхнего уровня?

Есть ли способ заставить Nimbus Look&Feel визуализировать свои собственные украшения окон для верхнего уровня JFrame? Я копался в Интернете, и я начинаю подозревать, что это вообще невозможно. Кто-нибудь действительно преуспел в этом (и заботился об этом)?

Декорации в виде нимбов хороши и аккуратны для внутренних рамок, но, очевидно, невозможно добиться такого же эффекта на JFrames и JDialogs.

Я попробовал nimbusx (расширения Nimbus), библиотеку, которая создает подклассы JFrame и JDialog. и якобы применяет к ним декорации в стиле нимбов (тогда вам просто нужно инстанцировать классы нимбусов вместо JFrame и JDialog); но на самом деле он не работает и с 2009 года находится в неактивной альфа-стадии.

Итак, удалось ли кому-нибудь добиться того, чтобы их Java-приложение в стиле нимба выглядело одинаково на всех платформах, заставив Nimbus LAF позаботиться об оформлении окон?


person Unai Vivi    schedule 25.01.2012    source источник
comment
Судя по этой ошибке, кажется, что Nimbus LAF еще не может позаботиться обо всех украшениях окон: "nofollow noreferrer">bugs.sun.com/bugdatabase/   -  person Thomas    schedule 25.01.2012
comment
Кажется, что Nimbus PLAF глючит и заброшен. :(   -  person Andrew Thompson    schedule 25.01.2012
comment
@Thomas Действительно :( Я надеюсь, что кому-то удалось найти какой-нибудь грязный хак, чтобы обойти это ...   -  person Unai Vivi    schedule 25.01.2012
comment
Вы также можете использовать другой внешний вид. Есть много хороших, например. Вещество ЛАФ.   -  person Thomas    schedule 25.01.2012
comment
@AndrewThompson Слишком много пренебрежения для такого приятного вида и ощущений ... RFE в базе данных ошибок Sun / Oracle существует (в состоянии «Принято») с начала 2008 года ...   -  person Unai Vivi    schedule 25.01.2012
comment
@Thomas К сожалению, Substance LAF больше не поддерживается активно ... Какой-то парень действительно разветвил его в новый проект под названием Insubstantial, но у них обоих есть одни и те же несколько ошибок максимизации окна на некоторых платформах: # 1 развернутые окна закрывают автоматическое скрытие панелей задач, предотвращая вам получить к ним доступ, # 2 проблемы с несколькими экранами и / или высокими разрешениями (неспособность определить правильный размер для увеличения на большом мониторе)   -  person Unai Vivi    schedule 25.01.2012
comment
@Unai Vivi в Substance Я никогда не видел ни этого, ни ошибок 1) исправлено в Java5, 2) исправлено в Java5, 3) я использую оба в Java Swing с более старыми Substance L&F, 4) последние две недели протестированы с новейшим SwingX и более старыми Substance L&F   -  person mKorbel    schedule 25.01.2012
comment
@Остров Каталина, пожалуйста, смотрите мой пост здесь   -  person mKorbel    schedule 25.01.2012


Ответы (1)


Я делал это с JGoodies Looks в прошлом. . Я не знаю, поддерживает ли Nimbus это или нет.

Однако это не только LAF, это опция, которую вы должны программно включить для JFrame (и JDialog, если хотите).

JFrame.setDefaultLookAndFeelDecorated( true );
JDialog.setDefaultLookAndFeelDecorated( true );

См. Документацию по API

person wolfcastle    schedule 12.03.2012
comment
Нет, это не работает для Nimbus, потому что он не отображает свои собственные украшения окна верхнего уровня (это делегировано операционной системе)... - person Unai Vivi; 13.03.2012