Пакет javax.swing.plaf.nimbus
Предоставляет пользовательские интерфейсы, созданные в соответствии с кроссплатформенной темой Nimbus.
Nimbus использует экземпляры интерфейса Painter для рисования компонентов. Каждый компонент Swing сопоставлен с фоном и передним планом Painter, и может иметь несколько рисовальщиков для разных состояний компонентов.
Nimbus позволяет настраивать многие свои свойства, включая рисовальщиков, изменяя таблицу UIDefaults. Вот пример:
UIManager.put("ProgressBar.tileWidth", myTileWidth);
UIManager.put("ProgressBar[Enabled].backgroundPainter", myBgPainter);
UIManager.put("ProgressBar[Enabled].foregroundPainter", myFgPainter);Также возможна настройка на уровне компонента. При отрисовке компонента Nimbus проверяет его свойство клиента с именем "Nimbus.Overrides". Значение этого свойства должно быть экземпляром UIDefaults. Параметры из этой таблицы переопределяют параметры UIManager, но только для данного экземпляра компонента. Необязательное свойство клиента "Nimbus.Overrides.InheritDefaults" типа Boolean указывает, должны ли переопределенные настройки объединяться со стандартными (true) или заменять их (false). По умолчанию они объединяются:
JProgressBar bar = new JProgressBar();
UIDefaults overrides = new UIDefaults();
overrides.put("ProgressBar.cycleTime", 330);
...
bar.putClientProperty("Nimbus.Overrides", overrides);
bar.putClientProperty("Nimbus.Overrides.InheritDefaults", false);Цвета в Nimbus производятся из набора основных основных цветов. Также есть вторичные цвета, которые производятся из основных, но сами служат базовыми цветами для других производных цветов. Механизм получения производных цветов позволяет производить настройку во время выполнения, т.е. если основной или вторичный цвет изменится, все цвета, которые от него производятся, будут автоматически обновлены. Метод NimbusLookAndFeel.getDerivedColor(java.lang.String, float, float, float, int, boolean) можно использовать для создания производного цвета.
Эти классы предназначены для использования, когда соответствующий LookAndFeel класс был установлен (UIManager.setLookAndFeel(new XXXLookAndFeel())). Использование их, когда установлен другой LookAndFeel класс, может привести к непредсказуемым результатам, включая исключения. Кроме того, изменение LookAndFeel , поддерживаемого UIManager классом, без обновления соответствующего ComponentUI любого JComponent также может привести к непредсказуемым результатам, таким как неправильные отображаемые цвета, и в целом не рекомендуется.
Примечание: Большая часть API Swing не является потокобезопасной. Подробности см. в разделе Потоки в Swing в Java Tutorial.
- С момента:
- 1.7
| Класс | Описание |
|---|---|
| AbstractRegionPainter | Удобный базовый класс для определения экземпляров Painter для отрисовки области или компонента в Nimbus. |
| AbstractRegionPainter.PaintContext | Класс, инкапсулирующий полезную информацию при рисовании. |
| NimbusLookAndFeel | Класс NimbusLookAndFeel. |
| NimbusStyle | Реализация SynthStyle, используемая в Nimbus. |
| State<T extends JComponent> | Представляет встроенное или пользовательское состояние в Nimbus. |
| Перечисление | Описание |
|---|---|
| AbstractRegionPainter.PaintContext.CacheMode | Режим кэширования. |
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/plaf/nimbus/package-summary.html