public final class NimbusStyle extends SynthStyle
Реализация SynthStyle используется Нимбом. У каждой Области, которая была зарегистрирована в NimbusLookAndFeel, будет связанный NimbusStyle. Сторонним компонентам, которые регистрируются в NimbusLookAndFeel, поэтому вручат NimbusStyle от стили от #getStyle (JComponent, Область) метод.
Этот class должным образом читает и получает значения, помещенные в UIDefaults согласно стандартным соглашениям о присвоении имен Нимба. Это создаст и получит живописцев, шрифты, цвета, и другие данные, хранившие там.
NimbusStyle также поддерживает возможность переопределить настройки на на компонентное основание. NimbusStyle проверяет клиентскую карту свойства компонента на "Нимб. Переопределения". Если значение, связанное с этим ключом, будет экземпляром UIDefaults, то значения в той таблице значений по умолчанию переопределят стандартные значения по умолчанию Нимба в UIManager, но для того компонентного экземпляра только.
Дополнительно, можно определить клиентское свойство "Nimbus. Overrides. InheritDefaults". Если это правда, это клиентское свойство указывает, что значения по умолчанию, расположенные в UIManager, должны сначала быть считаны, и затем заменены значениями по умолчанию, расположенными в компонентных клиентских свойствах. Если ложь, то только значения по умолчанию, расположенные в компонентной клиентской карте свойства, будут использоваться. Если не определенный, это, как предполагается, истина.
Следует определить "Нимб. Переопределения" для "Нимба. Переопределения. InheritDefaults", чтобы иметь любой эффект. "Нимб. Переопределения" указывают, есть ли любые переопределения, в то время как "Нимб. Переопределения. InheritDefaults" указывает, должны ли те переопределения сначала быть инициализированы со значениями по умолчанию от UIManager.
NimbusStyle перезагружается всякий раз, когда событие изменения свойства запускается для компонента для "Нимба. Переопределения" или "Нимб. Переопределения. InheritDefaults". Так например установка нового UIDefaults на компоненте заставила бы стиль быть перезагруженным.
Значения только читаются из UIManager однажды, и затем кэшируются. Если Вы должны считать значения снова (например, если UI перезагружается), то отбросьте этот NimbusStyle и считайте новый из NimbusLookAndFeel, используя NimbusLookAndFeel.getStyle.
Основной API интереса к этому class для 3-ьих компонентных авторов стороны является тремя методами, которые получают живописцев: #getBackgroundPainter, #getForegroundPainter, и #getBorderPainter.
NimbusStyle позволяет Вам определять пользовательские состояния, или изменять порядок состояний. У синтезатора (и таким образом Нимб) есть понятие "состояния". Например, JButton мог бы быть в состоянии "MOUSE_OVER", или "ВКЛЮЧЕННОМ" состоянии, или "ОТКЛЮЧЕННОМ" состоянии. Они - все "стандартные" состояния, которые определяются в синтезаторе, и которые применяются ко всем Областям синтезатора.
Иногда, однако, у Вас должно быть пользовательское состояние. Например, Вы хотите, чтобы JButton представил по-другому, если это - родитель, JToolbar. В Нимбе Вы определяете эти пользовательские состояния включением специального ключа в UIDefaults. Следующие записи UIDefaults определяют три состояния для этой кнопки:
JButton.States = Enabled, Disabled, Toolbar
JButton[Enabled].backgroundPainter = somePainter
JButton[Disabled].background = BLUE
JButton[Toolbar].backgroundPainter = someOtherPaint
Поскольку можно видеть, JButton.States
запись перечисляет состояния, которые будет поддерживать стиль JButton. Вы тогда определяете настройки для каждого состояния. Если Вы не определяете JButton.States
запись, тогда стандартные состояния Синтезатора будут приняты. Если Вы определите запись, но список состояний является пустым или нулевым, то стандартные состояния синтезатора будут приняты.
Модификатор и Тип | Поле и Описание |
---|---|
static String |
LARGE_KEY |
static double |
LARGE_SCALE |
static String |
MINI_KEY |
static double |
MINI_SCALE |
static String |
SMALL_KEY |
static double |
SMALL_SCALE |
Модификатор и Тип | Метод и Описание |
---|---|
Объект |
get(SynthContext ctx, Object key)
Метод get для области определенное свойство стиля.
|
Живописец |
getBackgroundPainter(SynthContext ctx)
Получает соответствующего фонового Живописца, если есть один для состояния, определенного в данном SynthContext.
|
Живописец |
getBorderPainter(SynthContext ctx)
Получает соответствующего Живописца границы, если есть один для состояния, определенного в данном SynthContext.
|
protected Color |
getColorForState(SynthContext ctx, ColorType type)
Возвращает цвет для указанного состояния.
|
protected Font |
getFontForState(SynthContext ctx)
Возвращает шрифт для указанного состояния.
|
Живописец |
getForegroundPainter(SynthContext ctx)
Получает соответствующего приоритетного Живописца, если есть один для состояния, определенного в данном SynthContext.
|
Вставки |
getInsets(SynthContext ctx, Insets in)
Возвращает Вставки, которые используются, чтобы вычислить информацию о калибровке.
|
SynthPainter |
getPainter(SynthContext ctx)
Возвраты
SynthPainter это будет использоваться для рисования. |
void |
installDefaults(SynthContext ctx)
Устанавливает необходимое состояние от этого Стиля на
JComponent от context . |
boolean |
isOpaque(SynthContext ctx)
Возвращает true, если область непрозрачна.
|
getBoolean, getColor, getFont, getGraphicsUtils, getIcon, getInt, getString, uninstallDefaults
public static final String LARGE_KEY
public static final String SMALL_KEY
public static final String MINI_KEY
public static final double LARGE_SCALE
public static final double SMALL_SCALE
public static final double MINI_SCALE
public void installDefaults(SynthContext ctx)
SynthStyle
JComponent
от context
.installDefaults
в class SynthStyle
ctx
- SynthContext, идентифицирующий компонент, чтобы установить свойства к.public Insets getInsets(SynthContext ctx, Insets in)
SynthStyle
getInsets
в class SynthStyle
ctx
- SynthContext, идентифицирующий запрашивающую сторонуin
- Вставки, чтобы поместить возвращаемое значение в.protected Color getColorForState(SynthContext ctx, ColorType type)
SynthStyle
JComponent
.getColorForState
в class SynthStyle
ctx
- SynthContext, идентифицирующий запрашивающую сторонуtype
- Тип цвета, который требуют.protected Font getFontForState(SynthContext ctx)
SynthStyle
JComponent
.getFontForState
в class SynthStyle
ctx
- SynthContext, идентифицирующий запрашивающую сторонуpublic SynthPainter getPainter(SynthContext ctx)
SynthStyle
SynthPainter
это будет использоваться для рисования. Это может возвратить нуль.getPainter
в class SynthStyle
ctx
- SynthContext, идентифицирующий запрашивающую сторонуpublic boolean isOpaque(SynthContext ctx)
SynthStyle
isOpaque
в class SynthStyle
ctx
- SynthContext, идентифицирующий запрашивающую сторонуpublic Object get(SynthContext ctx, Object key)
SynthStyle
get
в class SynthStyle
ctx
- key
- не должен быть нульpublic Painter getBackgroundPainter(SynthContext ctx)
ctx
- SynthContext. Не должен быть нуль.public Painter getForegroundPainter(SynthContext ctx)
ctx
- SynthContext. Не должен быть нуль.public Painter getBorderPainter(SynthContext ctx)
ctx
- SynthContext. Не должен быть нуль.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92