Класс StyleContext
- Все реализуемые интерфейсы:
Serializable, AbstractDocument.AttributeContext
- Прямые известные подклассы:
StyleSheet
public class StyleContext extends Object implements Serializable, AbstractDocument.AttributeContext
Этот класс также обеспечивает эффективную поддержку небольших наборов атрибутов и сжимает их, совместно используя при разных обращениях и учитывая их неизменяемость. Поскольку многие стили повторяются, возможности совместного использования значительны, а копирование может быть чрезвычайно дешёвым. Для больших наборов вероятность совместного использования снижается, поэтому автоматически применяется менее эффективная по объёму памяти реализация.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с версии 1.4, поддержка долговременного хранения всех JavaBeans добавлена в пакет java.beans. См. XMLEncoder.
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
class |
StyleContext.NamedStyle |
Набор атрибутов, обычно используемый для представления стилей символов и абзацев. |
class |
StyleContext.SmallAttributeSet |
Этот класс хранит небольшое количество атрибутов в массиве. |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final String |
DEFAULT_STYLE |
Имя логического стиля по умолчанию, применяемого к абзацам. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
StyleContext() |
Создаёт новый объект StyleContext. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
AttributeSet |
addAttribute |
Добавляет атрибут в указанный набор и возвращает новый репрезентативный набор. |
AttributeSet |
addAttributes |
Добавляет набор атрибутов элементу. |
void |
addChangeListener |
Добавляет слушатель для отслеживания добавления и удаления стилей. |
Style |
addStyle |
Добавляет новый стиль в иерархию стилей. |
protected MutableAttributeSet |
createLargeAttributeSet |
Создаёт большой набор атрибутов, оптимизирующий время за счёт объёма памяти. |
protected StyleContext.SmallAttributeSet |
createSmallAttributeSet |
Создаёт компактный набор атрибутов, который может использоваться совместно. |
Color |
getBackground |
Преобразует набор атрибутов в спецификацию цвета фона. |
ChangeListener[] |
getChangeListeners() |
Возвращает массив всех ChangeListenerов, добавленных в этот StyleContext с помощью addChangeListener(). |
protected int |
getCompressionThreshold() |
Возвращает максимальное количество пар «ключ/значение», которые следует попытаться сжать в уникальные/неизменяемые наборы. |
static final StyleContext |
getDefaultStyleContext() |
Возвращает контекст AttributeContext по умолчанию, общий для всех документов, которые не определяют и не предоставляют собственный контекст. |
AttributeSet |
getEmptySet() |
Возвращает пустой AttributeSet. |
Font |
getFont |
Возвращает новый шрифт. |
Font |
getFont |
Получает шрифт из набора атрибутов. |
FontMetrics |
getFontMetrics |
Возвращает метрики шрифта. |
Color |
getForeground |
Преобразует набор атрибутов в спецификацию цвета переднего плана. |
static Object |
getStaticAttribute |
Возвращает объект, ранее зарегистрированный с помощью registerStaticAttributeKey. |
static Object |
getStaticAttributeKey |
Возвращает строку, с которой будет зарегистрирован key. |
Style |
getStyle |
Получает именованный стиль, ранее добавленный в документ |
Enumeration |
getStyleNames() |
Получает имена определённых стилей. |
void |
readAttributes |
Обработка чтения атрибутов, зависящая от контекста |
static void |
readAttributeSet |
Читает набор атрибутов из указанного входного потока объектов, ранее записанный с помощью writeAttributeSet. |
void |
reclaim |
Возвращает набор, который больше не нужен реализации MutableAttributeSet. |
static void |
registerStaticAttributeKey |
Регистрирует объект как статический объект, используемый в качестве ключа в наборах атрибутов. |
AttributeSet |
removeAttribute |
Удаляет атрибут из набора. |
AttributeSet |
removeAttributes |
Удаляет набор атрибутов элемента. |
AttributeSet |
removeAttributes |
Удаляет набор атрибутов элемента. |
void |
removeChangeListener |
Удаляет слушатель, отслеживавший добавление и удаление стилей. |
void |
removeStyle |
Удаляет именованный стиль, ранее добавленный в документ. |
String |
toString() |
Преобразует StyleContext в строку. |
void |
writeAttributes |
Обработка записи атрибутов, зависящая от контекста |
static void |
writeAttributeSet |
Записывает набор атрибутов в указанный поток объектов для сериализации. |
Подробное описание полей
DEFAULT_STYLE
public static final String DEFAULT_STYLE
- См. также:
Подробное описание конструкторов
StyleContext
public StyleContext()
Подробное описание методов
getDefaultStyleContext
public static final StyleContext getDefaultStyleContext()
- Возвращает:
- контекст
addStyle
public Style addStyle(String nm, Style parent)
- Параметры:
-
nm— имя стиля (должно быть уникальным среди именованных стилей документа). Имя может быть null, если стиль не имеет имени, однако вызывающий код отвечает за управление возвращённой ссылкой, поскольку получить безымянный стиль по имени нельзя. Безымянный стиль может быть полезен, например, для переопределения атрибутов символов, как в фрагменте текста, оформленном стилем. -
parent— родительский стиль. Может быть null, если атрибуты, не заданные в стиле, не требуется разрешать с помощью другого стиля. - Возвращает:
- созданный стиль
removeStyle
public void removeStyle(String nm)
- Параметры:
-
nm— имя удаляемого стиля
getStyle
public Style getStyle(String nm)
- Параметры:
-
nm— имя стиля - Возвращает:
- стиль
getStyleNames
public Enumeration<?> getStyleNames()
- Возвращает:
- список имён в виде перечисления
addChangeListener
public void addChangeListener(ChangeListener l)
- Параметры:
-
l— слушатель изменений
removeChangeListener
public void removeChangeListener(ChangeListener l)
- Параметры:
-
l— слушатель изменений
getChangeListeners
public ChangeListener[] getChangeListeners()
ChangeListenerов, добавленных в этот StyleContext с помощью addChangeListener().- Возвращает:
- все добавленные
ChangeListenerы или пустой массив, если слушатели не добавлялись - Начиная с версии:
- 1.4
getFont
public Font getFont(AttributeSet attr)
- Параметры:
-
attr— набор атрибутов - Возвращает:
- шрифт
getForeground
public Color getForeground(AttributeSet attr)
- Параметры:
-
attr— набор атрибутов - Возвращает:
- цвет
getBackground
public Color getBackground(AttributeSet attr)
- Параметры:
-
attr— набор атрибутов - Возвращает:
- цвет
getFont
public Font getFont(String family, int style, int size)
- Параметры:
-
family— семейство шрифтов (например, "Monospaced") -
style— начертание шрифта (например, Font.PLAIN) -
size— размер в пунктах >= 1 - Возвращает:
- новый шрифт
getFontMetrics
public FontMetrics getFontMetrics(Font f)
- Параметры:
-
f— шрифт - Возвращает:
- метрики
addAttribute
public AttributeSet addAttribute(AttributeSet old, Object name, Object value)
Этот метод является потокобезопасным, хотя большинство методов Swing таковыми не являются. Подробнее см. в разделе Параллельность в Swing.
- Определено в:
-
addAttributeв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
old— исходный набор атрибутов -
name— имя атрибута, не равное null -
value— значение атрибута - Возвращает:
- обновлённый набор атрибутов
- См. также:
addAttributes
public AttributeSet addAttributes(AttributeSet old, AttributeSet attr)
Этот метод является потокобезопасным, хотя большинство методов Swing таковыми не являются. Подробнее см. в разделе Параллельность в Swing.
- Определено в:
-
addAttributesв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
old— исходный набор атрибутов -
attr— добавляемые атрибуты - Возвращает:
- обновлённый набор атрибутов
- См. также:
removeAttribute
public AttributeSet removeAttribute(AttributeSet old, Object name)
Этот метод является потокобезопасным, хотя большинство методов Swing таковыми не являются. Подробнее см. в разделе Параллельность в Swing.
- Определено в:
-
removeAttributeв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
old— исходный набор атрибутов -
name— имя атрибута, не равное null - Возвращает:
- обновлённый набор атрибутов
- См. также:
removeAttributes
public AttributeSet removeAttributes(AttributeSet old, Enumeration<?> names)
Этот метод является потокобезопасным, хотя большинство методов Swing таковыми не являются. Подробнее см. в разделе Параллельность в Swing.
- Определено в:
-
removeAttributesв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
old— исходный набор атрибутов -
names— имена атрибутов - Возвращает:
- обновлённый набор атрибутов
- См. также:
removeAttributes
public AttributeSet removeAttributes(AttributeSet old, AttributeSet attrs)
Этот метод является потокобезопасным, хотя большинство методов Swing таковыми не являются. Подробнее см. в разделе Параллельность в Swing.
- Определено в:
-
removeAttributesв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
old— исходный набор атрибутов -
attrs— атрибуты - Возвращает:
- обновлённый набор атрибутов
- См. также:
getEmptySet
public AttributeSet getEmptySet()
- Определено в:
-
getEmptySetв интерфейсеAbstractDocument.AttributeContext - Возвращает:
- набор
reclaim
public void reclaim(AttributeSet a)
Этот метод является потокобезопасным, хотя большинство методов Swing таковыми не являются. Подробнее см. в разделе Параллельность в Swing.
- Определено в:
-
reclaimв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
a— набор, подлежащий возврату
getCompressionThreshold
protected int getCompressionThreshold()
- Возвращает:
- пороговое значение
createSmallAttributeSet
protected StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)
- Параметры:
-
a— набор атрибутов, который нужно представить в компактной форме. - Возвращает:
- компактный набор атрибутов, который может использоваться совместно
createLargeAttributeSet
protected MutableAttributeSet createLargeAttributeSet(AttributeSet a)
- Параметры:
-
a— набор атрибутов, который нужно представить в расширенной форме. - Возвращает:
- большой набор атрибутов, оптимизирующий время за счёт объёма памяти
toString
writeAttributes
public void writeAttributes(ObjectOutputStream out, AttributeSet a) throws IOException
- Параметры:
-
out— выходной поток -
a— набор атрибутов - Выбрасывает:
-
IOException— при любой ошибке ввода-вывода
readAttributes
public void readAttributes(ObjectInputStream in, MutableAttributeSet a) throws ClassNotFoundException, IOException
- Параметры:
-
in— поток объектов, из которого считываются данные атрибутов. -
a— набор атрибутов, в который помещаются определения атрибутов. - Выбрасывает:
-
ClassNotFoundException— передаётся выше по стеку, если возникает при чтении потока объектов. -
IOException— передаётся выше по стеку, если возникает при чтении потока объектов.
writeAttributeSet
public static void writeAttributeSet(ObjectOutputStream out, AttributeSet a) throws IOException
registerStaticAttributeKey. Все ключи атрибутов, не зарегистрированные как статические, сериализуются напрямую. Предполагается, что все значения являются сериализуемыми.- Параметры:
-
out— выходной поток -
a— набор атрибутов - Выбрасывает:
-
IOException— при любой ошибке ввода-вывода
readAttributeSet
public static void readAttributeSet(ObjectInputStream in, MutableAttributeSet a) throws ClassNotFoundException, IOException
writeAttributeSet. Метод пытается восстановить статические объекты-ключи в виде статических объектов текущей виртуальной машины, учитывая только ключи, зарегистрированные методом registerStaticAttributeKey. Атрибуты, полученные из потока, помещаются в указанный изменяемый набор.- Параметры:
-
in— поток объектов, из которого считываются данные атрибутов. -
a— набор атрибутов, в который помещаются определения атрибутов. - Выбрасывает:
-
ClassNotFoundException— передаётся выше по стеку, если возникает при чтении потока объектов. -
IOException— передаётся выше по стеку, если возникает при чтении потока объектов.
registerStaticAttributeKey
public static void registerStaticAttributeKey(Object key)
Для работы в виртуальной машине версии 1.1 используется значение, возвращаемое методом toString, к которому добавляется имя класса. Возвращаемое методом toString значение не должно содержать ссылку на класс (то есть метод следует переопределить относительно определения в Object), чтобы оно оставалось неизменным при последующем вычислении.
- Параметры:
-
key— ключ-объект, не равный null
getStaticAttribute
public static Object getStaticAttribute(Object key)
registerStaticAttributeKey.- Параметры:
-
key— ключ-объект - Возвращает:
- объект, ранее зарегистрированный с помощью
registerStaticAttributeKey
getStaticAttributeKey
public static Object getStaticAttributeKey(Object key)
key.- Параметры:
-
key— ключ-объект - Возвращает:
- строку, с которой будет зарегистрирован
key - См. также:
© 1993, 2025, 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/25/docs/api/java.desktop/javax/swing/text/StyleContext.html