В моем текущем проекте мы должны разработать красивое основанное на рабочем столе приложение в Java.
В настоящее время нам записали очень простое настольное приложение в колебании, и у команды нет хорошего знания колебания. Мы можем создать очень красивый UI в колебании?
Мы должны использовать JavaFX для того, чтобы создать настольное приложение?
Что другие альтернативы должны сделать это?
Swing очень гибок в отношении внешнего вида, и вы можете создавать очень хорошо выглядящие приложения с помощью Swing.
Я рекомендую книгу Filthy Rich Clients Chet Haase и Romain Guy, если вы хотите узнать, как делать красивые приложения Swing GUI.
Посмотрите http://www.pushing-pixels.org/. Кирилл является автором Substance, который предоставляет тонну новых вариантов внешнего вида и настроек для Swing. Вот запись в блоге, которая показывает немного того, что возможно с Swing. Раньше здесь была ссылка на его презентацию 2007 года на Java One, но, к сожалению, ссылка больше не работает.
Вы, безусловно, можете создавать великолепно выглядящие пользовательские интерфейсы в Swing - такие приложения, как NetBeans и IntelliJ IDEA , доказали это среди многих других.
Единственная альтернатива Swing - это SWT (набор инструментов Eclipses), однако он не переносим, как Swing, и не такой гибкий. Однако он предлагает более высокую производительность и использование собственных компонентов, что может быть тем, что некоторые люди действительно хотят.
Также существуют привязки Java для большинства существующих наборов инструментов GUI - например, Java для Gnome , и кому-то они могут показаться интересными.
Однако я предпочитаю исключительную переносимость Swing, принятие MVC, внешний вид и возможности подключаемых модулей, доступность множества сторонних библиотек с дополнительными компонентами ( SwingX , JIDE , ...) и простота использования.
Между прочим, для достижения оптимальных результатов в Swing очень важно выбрать хороший менеджер компоновки - я рекомендую вам взглянуть на всемогущую компоновку MiG .
Из вашего ответа не очень понятно, в чем ваша проблема. Простое, но часто достаточное решение - изменить внешний вид вашего приложения на стиль по умолчанию в Системе (чтобы Swing выглядел так же, как собственное приложение). Все, что вам нужно сделать, это вставить следующий код где-нибудь перед созданием / отображением любого из ваших пользовательских интерфейсов (если вы не знаете, где, поместите его первым в своем основном методе):
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
// exit application, log or ignore exception
}
Вы можете сделать так, как хотите. Особенно, если вы напишете свой собственный внешний вид. Я сам сделал это с помощью полупрозрачных панелей и упрощенных кнопок.
Взгляните на скриншоты по адресу:
http://www.taranfx.com/best-java-swing-look-and-feel-themes-professional-casual-top-10
Nimbus - это новый стиль, который набирает популярность, и он выглядит очень профессионально, imo: