Класс 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() |
Возвращает массив всех ChangeListeners, добавленных в этот StyleContext с помощью addChangeListener(). |
protected int |
getCompressionThreshold() |
Возвращает максимальное количество пар ключ-значение, которые необходимо сжать в уникальные/неизменяемые наборы. |
static final StyleContext |
getDefaultStyleContext() |
Возвращает контекст атрибутов по умолчанию, используемый всеми документами, которые не заботятся об определении/предоставлении собственного контекста. |
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 - Возвращает:
- набор
Возвращение ресурсов
public void reclaim(AttributeSet a)
Этот метод потокобезопасен, хотя большинство методов Swing таковыми не являются. Подробнее об этом см. Асинхронность в Swing.
- Указано:
-
reclaimв интерфейсеAbstractDocument.AttributeContext - Параметры:
-
a- набор, который нужно вернуть
Получение порога сжатия
protected int getCompressionThreshold()
- Возвращает:
- порог
Создание небольшого набора атрибутов
protected StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)
- Параметры:
-
a- набор атрибутов, который нужно представить в компактной форме. - Возвращает:
- компактный набор атрибутов, который может быть общим
Создание большого набора атрибутов
protected MutableAttributeSet createLargeAttributeSet(AttributeSet a)
- Параметры:
-
a- набор атрибутов, который нужно представить в большем формате. - Возвращает:
- большой набор атрибутов, который должен жертвовать памятью ради скорости
toString
public String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строку
Запись атрибутов
public void writeAttributes(ObjectOutputStream out, AttributeSet a) throws IOException
- Параметры:
-
out- поток вывода -
a- набор атрибутов - Исключения:
-
IOException- при любой ошибке ввода/вывода
Чтение атрибутов
public void readAttributes(ObjectInputStream in, MutableAttributeSet a) throws ClassNotFoundException, IOException
- Параметры:
-
in- поток для чтения данных атрибутов. -
a- набор атрибутов, в который нужно поместить определения атрибутов. - Исключения:
-
ClassNotFoundException- передаётся вверх, если встречается при чтении потока объектов. -
IOException- передаётся вверх, если встречается при чтении потока объектов.
Запись набора атрибутов
public static void writeAttributeSet(ObjectOutputStream out, AttributeSet a) throws IOException
registerStaticAttributeKey. Любой ключ атрибута, не зарегистрированный как статический ключ, будет сериализован непосредственно. Все значения должны быть сериализуемыми.- Параметры:
-
out- поток вывода -
a- набор атрибутов - Исключения:
-
IOException- при любой ошибке ввода/вывода
Чтение набора атрибутов
public static void readAttributeSet(ObjectInputStream in, MutableAttributeSet a) throws ClassNotFoundException, IOException
writeAttributeSet. Попытается восстановить ключи, которые были статическими объектами, до статических объектов в текущей виртуальной машине, учитывая только те ключи, которые были зарегистрированы с методом registerStaticAttributeKey. Полученные из потока атрибуты будут помещены в заданный изменяемый набор.- Параметры:
-
in- поток для чтения данных атрибутов. -
a- набор атрибутов, в который нужно поместить определения атрибутов. - Исключения:
-
ClassNotFoundException- передаётся вверх, если встречается при чтении потока объектов. -
IOException- передаётся вверх, если встречается при чтении потока объектов.
Регистрация статического ключа атрибута
public static void registerStaticAttributeKey(Object key)
Для работы под виртуальной машиной 1.1 это использует значение, возвращаемое toString, конкатенированное с именем класса. Возвращаемое значение toString не должно содержать ссылку на класс (т.е. оно должно быть переопределено из определения в Object), чтобы оно было таким же при повторном вычислении позже.
- Параметры:
-
key- непустой ключевой объект
Получение статического атрибута
public static Object getStaticAttribute(Object key)
registerStaticAttributeKey. - Параметры:
-
key- ключевой объект - Возвращает:
- Возвращает объект, ранее зарегистрированный с
registerStaticAttributeKey
Получение статического ключа атрибута
public static Object getStaticAttributeKey(Object key)
key будет зарегистрирована.- Параметры:
-
key- ключевой объект - Возвращает:
- строка, которая
keyбудет зарегистрирована - См. также:
© 1993, 2023, 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/21/docs/api/java.desktop/javax/swing/text/StyleContext.html