Это зависит от того, как далеко заходит ваш дизайн.Если вы просто хотите иметь обычные компоненты Swing поверх вашего изображения, это легко.Преобразуйте PSD в (например) PNG, создайте пользовательский подкласс JPanel
, который загружает изображение и перезаписывает метод paintComponent()
, чтобы нарисовать изображение вместо обычного фона.Все дочерние компоненты могут быть установлены прозрачными с помощью setOpaque(false)
.Это помещает ваше изображение в фоновый режим и помещает поверх него плавающие компоненты.
Если вы хотите изменить внешний вид отдельных компонентов, это будет много дополнительной работы.Вам нужно реализовать новый стиль Look & Feel for Swing.Я бы не рекомендовал идти по этому пути, если только вам это не нужно, мы говорим о неделях работы здесь, и для того, чтобы она действительно работала должным образом на всех платформах, требуется много испытаний.
В качестве альтернативы, уже есть тонны пользовательских Look & Feels, я предлагаю вам взглянуть на некоторые из свободно доступных (просто посмотрите "java look and feel").Многие из них могут быть настроены в некоторой степени (насколько это зависит от фактической реализации, поэтому внимательно изучите источник / документацию для каждого из них).