В дополнение к ответу Чии, я бы порекомендовал взглянуть на Руководство пользователя Windows Vista для общих советов по созданию пользовательских интерфейсов.
Хотя название («Руководство по взаимодействию с пользователем Windows Vista») и источник (Microsoft) могут указывать на то, что он содержит только ориентированные на Windows советы и рекомендации, он предлагает хорошие общие советы и указания, которые можно использовать при разработке интерфейсов для - Windows-приложения, а также.
В разделах Принципы проектирования рассматриваются некоторые моменты, которые следует учитывать при разработке эффективного пользовательского интерфейса. Например, в пуле три из Как создать отличный пользовательский интерфейс написано:
Не быть всем для всех людей Ваш
Программа будет более успешной
восхищая своих целевых пользователей, чем
пытаясь удовлетворить всех.
Это советы, которые применяются при разработке пользовательских интерфейсов на любой платформе. Конечно, есть и специальные инструкции для Windows.
Я считаю, что одна из главных причин, по которой внешний вид приложений Swing кажется «скучным» и «устаревшим», обусловлена независимой от платформы природой Java. Чтобы графические пользовательские интерфейсы работали на нескольких разных платформах, Java должна иметь средства для адаптации пользовательского интерфейса к различным хост-операционным системам.
Например, различные платформы имеют различные размеры для окон, кнопок и других визуальных компонентов, поэтому абсолютное позиционирование работает не слишком хорошо. Для решения этой проблемы Swing использует Layout Managers , которые (обычно) используют относительное расположение для размещения визуальных компонентов на экране.
Несмотря на эти «ограничения» построения графических пользовательских интерфейсов для Java, я думаю, что использование советов из руководств, предоставляемых источниками, не относящимися к Sun, и источниками, не относящимися к Java, все же может быть хорошим источником информации при разработке и реализации эффективный пользовательский интерфейс. В конце концов, разработка пользовательского интерфейса - это не столько языки программирования, сколько взаимодействие человека с машиной.