объединение настроенных классов Java LookAndFeel - PullRequest
0 голосов
/ 29 июня 2011

Есть ли простой способ объединить два пользовательских класса Java LookAndFeel?

Я хочу использовать класс Nimbus для своей темы (шрифты, закругленные края и т. Д.), Но с цветами из класса Metal. Если не считать, что я пишу свой индивидуальный класс «с нуля», мне просто интересно, есть ли сначала простой способ. Я вижу, что этот парень здесь: Смешанный внешний вид настроил только рамку, но я бы хотел сделать это для всех цветов. Возможно ли это или потребуется столько же времени, чтобы написать собственный класс?

1 Ответ

0 голосов
/ 29 июня 2011

http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/color.html

Приведенная выше ссылка приведет вас на страницу, где можно изменить цветовую схему внешнего вида Nimbus. Чтобы изменить цветовую схему, необходимо изменить как минимум 3 свойства. На этой странице есть ссылка на другую страницу, которая содержит все свойства внешнего вида Nimbus, если вам требуется больше изменений внешнего вида.

Если вам нужно получить цветовую схему для внешнего вида металла, вы можете использовать приведенный ниже фрагмент кода, чтобы увидеть все свойства внешнего вида металла. Вам нужно будет определить правильные свойства цвета в этом списке, а затем получить цвета, которые будут назначены в 3 свойствах внешнего вида Nimbus.

UIDefaults uiDefaults = UIManager.getDefaults();
Enumeration enum = uiDefaults.keys();
while (enum.hasMoreElements())
{
    Object key = enum.nextElement();
    Object val = uiDefaults.get(key);
    System.out.println("[" + key.toString() + "]:[" +
        (null != val ? val.toString() : "(null)") +
        "]");
}
...