Как я могу получить цвет текста кнопки, используя вещество LAF?

StackOverflow https://stackoverflow.com/questions/2871548

  •  03-10-2019
  •  | 
  •  

Вопрос

В моем приложении Java я должен настроить контроль, и для этого мне нужно использовать такие же цвета шрифта, как JButton. Отказ (Включено и отключено) Я не хочу их сложно, потому что пользователь может изменить кожу вещества во время выполнения.

Я в курсе ColorSchemes Но я не уверен, как продолжить, как только у меня есть цветовая схема текущей кожи. Также документация вещества говорит о создании собственной цветовой схемы, но я просто не могу понять способ извлечения определенного цвета.

Это было полезно?

Решение

Хорошо, наконец я подумал это:

Важный шаг - выяснить правильный Цветовая схема. Потому что в веществе каждая корневая панель может иметь свою собственную кожу, лучше всего использовать getCurrentSkinпомощник.

SubstanceColorScheme s = SubstanceLookAndFeel
        .getCurrentSkin(myComponent)
        .getEnabledColorScheme(
                SubstanceLookAndFeel.getDecorationType(myComponent)
         );

Другие возможности есть getDisabledColorScheme, getActiveColorScheme а также getBackgroundColorScheme.

Тогда вы можете использовать s.getForegroundColor или различные помощники методов от SubstanceColorUtilities.

Другие советы

Почему бы вам не спросить Кирилл (Создатель вещества) на форуме вещества в https://substance.dev.java.net/servlets/projectforumview.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top