Класс DefaultStyledDocument
- Все реализуемые интерфейсы:
-
Serializable,Document,StyledDocument
- Непосредственные известные подклассы:
HTMLDocument
public class DefaultStyledDocument extends AbstractDocument implements StyledDocument
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, добавлена поддержка долгосрочного хранения всех JavaBeans в пакете java.beans. См. XMLEncoder.
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
DefaultStyledDocument.AttributeUndoableEdit |
Объект UndoableEdit, используемый для запоминания изменений атрибутов AttributeSet для элемента. |
class |
DefaultStyledDocument.ElementBuffer |
Класс для управления изменениями в иерархии элементов. |
static class |
DefaultStyledDocument.ElementSpec |
Спецификация для построения элементов. |
protected class |
DefaultStyledDocument.SectionElement |
Корневой элемент по умолчанию для документа... отображает содержащиеся абзацы/строки. |
Вложенные классы/интерфейсы, объявленные в классе javax.swing.text.AbstractDocument
AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected DefaultStyledDocument.ElementBuffer |
buffer |
Буфер элементов. |
static final int |
BUFFER_SIZE_DEFAULT |
Размер буфера начального содержимого по умолчанию. |
Поля, объявленные в классе javax.swing.text.AbstractDocument
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName
Поля, объявленные в интерфейсе javax.swing.text.Document
StreamDescriptionProperty, TitleProperty
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DefaultStyledDocument() |
Создает документ по умолчанию с форматированием. |
DefaultStyledDocument |
Создает документ с форматированием. |
DefaultStyledDocument |
Создает документ с форматированием, используя реализацию хранения содержимого по умолчанию и общий набор стилей. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addDocumentListener |
Добавляет слушателя изменений документа для уведомлений об изменениях. |
Style |
addStyle |
Добавляет новый стиль в логическую иерархию стилей. |
protected void |
create |
Инициализирует документ, отражая заданную структуру элементов (т.е. структуру, сообщенную методом getDefaultRootElement). |
protected AbstractDocument.AbstractElement |
createDefaultRoot() |
Создает корневой элемент, используемый для представления структуры документа по умолчанию. |
Color |
getBackground |
Получает цвет фона из набора атрибутов. |
Element |
getCharacterElement |
Получает элемент символа на основе позиции. |
Element |
getDefaultRootElement() |
Получает корневой элемент по умолчанию. |
Font |
getFont |
Получает шрифт из набора атрибутов. |
Color |
getForeground |
Получает цвет переднего плана из набора атрибутов. |
Style |
getLogicalStyle |
Получает логический стиль, назначенный абзацу по заданной позиции. |
Element |
getParagraphElement |
Получает элемент абзаца по смещению pos. |
Style |
getStyle |
Получает именованный стиль, ранее добавленный. |
Enumeration |
getStyleNames() |
Получает список имен стилей. |
protected void |
insert |
Вставляет новые элементы в пакет. |
protected void |
insertUpdate |
Обновляет структуру документа в результате вставки текста. |
void |
removeDocumentListener |
Удаляет слушателя изменений документа. |
void |
removeElement |
Удаляет элемент из этого документа. |
void |
removeStyle |
Удаляет именованный стиль, ранее добавленный в документ. |
protected void |
removeUpdate |
Обновляет структуру документа в результате удаления текста. |
void |
setCharacterAttributes |
Устанавливает атрибуты для некоторой части документа. |
void |
setLogicalStyle |
Устанавливает логический стиль для абзаца по заданной позиции. |
void |
setParagraphAttributes |
Устанавливает атрибуты для абзаца. |
protected void |
styleChanged |
Вызывается при изменении любого из стилей этого документа. |
Методы, объявленные в классе javax.swing.text.AbstractDocument
addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, insertString, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javax.swing.text.Document
addUndoableEditListener, createPosition, getEndPosition, getLength, getProperty, getRootElements, getStartPosition, getText, getText, insertString, putProperty, remove, removeUndoableEditListener, render
Подробное описание полей
BUFFER_SIZE_DEFAULT
public static final int BUFFER_SIZE_DEFAULT
- См. также:
buffer
protected DefaultStyledDocument.ElementBuffer buffer
Подробное описание конструкторов
DefaultStyledDocument
public DefaultStyledDocument(AbstractDocument.Content c, StyleContext styles)
- Параметры:
-
c- контейнер для содержимого -
styles- ресурсы и определения стилей, которые могут быть объединены для нескольких документов
DefaultStyledDocument
public DefaultStyledDocument(StyleContext styles)
- Параметры:
-
styles- стили
DefaultStyledDocument
public DefaultStyledDocument()
Подробное описание методов
getDefaultRootElement
public Element getDefaultRootElement()
- Определено в:
-
getDefaultRootElementв интерфейсеDocument - Определено в:
-
getDefaultRootElementв классеAbstractDocument - Возвращает:
- корень
- См. также:
create
protected void create(DefaultStyledDocument.ElementSpec[] data)
getDefaultRootElement). Если документ содержал какие-либо данные, они будут сначала удалены.- Параметры:
-
data- данные элементов
insert
protected void insert(int offset, DefaultStyledDocument.ElementSpec[] data) throws BadLocationException
Этот метод потокобезопасен, хотя большинство методов Swing не являются таковыми. Пожалуйста, ознакомьтесь с Конкурентностью в Swing для получения дополнительной информации.
- Параметры:
-
offset- начальный смещение >= 0 -
data- данные элементов - Исключение:
-
BadLocationException- для некорректного начального смещения
removeElement
public void removeElement(Element elem)
Элемент удаляется из своего родительского элемента, а также текст в диапазоне, определённом элементом. Если элемент не связан с документом, выбрасывается
IllegalArgumentException.
Так как пустые ветвящиеся элементы не допускаются в документе, если элемент является единственным потомком, его родительский элемент также удаляется рекурсивно. Это означает, что при замене всех потомков определённого элемента новые потомки должны быть добавлены до удаления старых потомков.
Удаление элемента приводит к срабатыванию двух событий: DocumentEvent для изменений структуры элементов и
UndoableEditEvent для изменений в содержимом документа.
Если элемент содержит маркер конца содержимого (последний
"\n" символ в документе), этот символ не удаляется; вместо этого, предыдущий листовой элемент расширяется, чтобы охватить символ. Если последний листовой элемент уже заканчивается "\n",, он включается в удаление содержимого.
Если элемент является null,, выбрасывается NullPointerException. Если структура элементов станет недействительной после удаления, например, если элемент является корневым элементом документа, выбрасывается
IllegalArgumentException. Если текущая структура элементов недействительна, выбрасывается IllegalStateException.
- Параметры:
-
elem- удаляемый элемент - Исключение:
-
NullPointerException- если элемент являетсяnull -
IllegalArgumentException- если элемент не удалён -
IllegalStateException- если структура элементов недействительна - С:
- 1.7
addStyle
public Style addStyle(String nm, Style parent)
- Определено в:
-
addStyleв интерфейсеStyledDocument - Параметры:
-
nm- имя стиля (должно быть уникальным в коллекции именованных стилей). Имя может быть null, если стиль неименован, но вызывающая сторона отвечает за управление ссылкой, так как неименованный стиль не может быть получен по имени. Неименованный стиль может быть полезен для таких вещей, как переопределения атрибутов символов, как в стиле пробега. -
parent- родительский стиль. Может быть null, если неопределённые атрибуты не должны быть определены в каком-либо другом стиле. - Возвращает:
- стиль
removeStyle
public void removeStyle(String nm)
- Определено в:
-
removeStyleв интерфейсеStyledDocument - Параметры:
-
nm- имя стиля для удаления
getStyle
public Style getStyle(String nm)
- Определено в:
-
getStyleв интерфейсеStyledDocument - Параметры:
-
nm- имя стиля - Возвращает:
- стиль
getStyleNames
public Enumeration<?> getStyleNames()
- Возвращает:
- все имена стилей
setLogicalStyle
public void setLogicalStyle(int pos, Style s)
Этот метод потокобезопасен, хотя большинство методов Swing не являются таковыми. Пожалуйста, ознакомьтесь с Конкурентностью в Swing для получения дополнительной информации.
- Определено в:
-
setLogicalStyleв интерфейсеStyledDocument - Параметры:
-
pos- смещение от начала документа >= 0 -
s- логический стиль для назначения абзацу, null, если не используется
getLogicalStyle
public Style getLogicalStyle(int p)
- Определено в:
-
getLogicalStyleв интерфейсеStyledDocument - Параметры:
-
p- позиция для преобразования в абзац и определения назначенного логического стиля >= 0. Это смещение от начала документа. - Возвращает:
- стиль, null, если не используется
setCharacterAttributes
public void setCharacterAttributes(int offset, int length, AttributeSet s, boolean replace)
offset и length определяют диапазон текста, для которого устанавливаются атрибуты. Если длина <= 0, то никакие действия не выполняются и метод просто возвращает значение. Если смещение <= 0 или > длины текста, то никакие действия не выполняются и метод просто возвращает значение. В противном случае, если offset + length превысит длину текста, то затронутый диапазон усекается.
Этот метод потокобезопасен, хотя большинство методов Swing не являются таковыми. Пожалуйста, ознакомьтесь с Конкурентностью в Swing для получения дополнительной информации.
- Определено в:
-
setCharacterAttributesв интерфейсеStyledDocument - Параметры:
-
offset- смещение в документе >= 0 -
length- длина > 0 -
s- атрибуты -
replace- true, если предыдущие атрибуты должны быть заменены перед установкой новых атрибутов
Установить атрибуты абзаца
public void setParagraphAttributes(int offset, int length, AttributeSet s, boolean replace)
Этот метод потокобезопасен, хотя большинство методов Swing не являются таковыми. Для получения дополнительной информации см. Конкурентность в Swing.
- Определено в:
-
setParagraphAttributesв интерфейсеStyledDocument - Параметры:
-
offset- смещение в абзац >= 0 -
length- количество затронутых символов >= 0 -
s- атрибуты -
replace- нужно ли заменить существующие атрибуты или объединить их
getParagraphElement
public Element getParagraphElement(int pos)
pos. Абзац состоит как минимум из одного дочернего элемента, который обычно является листом.- Определено в:
-
getParagraphElementв интерфейсеStyledDocument - Определено в:
-
getParagraphElementв классеAbstractDocument - Параметры:
-
pos- начальное смещение >= 0 - Возвращает:
- элемент
getCharacterElement
public Element getCharacterElement(int pos)
- Определено в:
-
getCharacterElementв интерфейсеStyledDocument - Параметры:
-
pos- позиция в документе >= 0 - Возвращает:
- элемент
insertUpdate
protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
- Переопределяет:
-
insertUpdateв классеAbstractDocument - Параметры:
-
chng- описание изменения документа -
attr- атрибуты
removeUpdate
protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
- Переопределяет:
-
removeUpdateв классеAbstractDocument - Параметры:
-
chng- описание изменения документа
createDefaultRoot
protected AbstractDocument.AbstractElement createDefaultRoot()
- Возвращает:
- основной элемент
getForeground
public Color getForeground(AttributeSet attr)
- Определено в:
-
getForegroundв интерфейсеStyledDocument - Параметры:
-
attr- набор атрибутов - Возвращает:
- цвет
getBackground
public Color getBackground(AttributeSet attr)
- Определено в:
-
getBackgroundв интерфейсеStyledDocument - Параметры:
-
attr- набор атрибутов - Возвращает:
- цвет
getFont
public Font getFont(AttributeSet attr)
- Определено в:
-
getFontв интерфейсеStyledDocument - Параметры:
-
attr- набор атрибутов - Возвращает:
- шрифт
styleChanged
protected void styleChanged(Style style)
- Параметры:
-
style- стиль, который изменился.
addDocumentListener
public void addDocumentListener(DocumentListener listener)
- Определено в:
-
addDocumentListenerв интерфейсеDocument - Переопределяет:
-
addDocumentListenerв классеAbstractDocument - Параметры:
-
listener- прослушиватель - См. также:
removeDocumentListener
public void removeDocumentListener(DocumentListener listener)
- Определено в:
-
removeDocumentListenerв интерфейсеDocument - Переопределяет:
-
removeDocumentListenerв классеAbstractDocument - Параметры:
-
listener- прослушиватель - См. также:
© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/text/DefaultStyledDocument.html