|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public class HTMLDocument extends DefaultStyledDocument
HTMLDocument.HTMLReader, который реализует HTMLEditorKit.ParserCallback протокол, который ожидает синтаксический анализатор. Чтобы изменить структуру, можно разделить на подклассы HTMLReader, и повторно реализуйте метод getReader(int) возвратить новую реализацию читателя. Документация для HTMLReader должен консультироваться для деталей создаваемой структуры значения по умолчанию. Намерение состоит в том, что документ нес потерями (хотя репродуцирование формата HTML может привести к различному формату). Модели документа только HTML, и не предпринимают попытки сохранить атрибуты представления в этом. Элементы идентифицируются StyleContext.NameAttribute атрибут, у которого должно всегда быть значение типа HTML.Tag это идентифицирует вид элемента. Синтезируются некоторые из элементов (таких как комментарии). HTMLFactory использование этот атрибут, чтобы определить, какой представление, чтобы создать.
Этот документ поддерживает инкрементную загрузку. TokenThreshold свойство управляет, сколько из синтаксического анализа буферизуется прежде, чем попытаться обновить структуру элемента документа. Это свойство устанавливается EditorKit так, чтобы подклассы могли отключить это.
Base свойство определяет URL, против которого разрешаются относительные URL. По умолчанию это будет Document.StreamDescriptionProperty если значением свойства является URL. Если с <ОСНОВНЫМ> тегом встретятся, то основа станет URL, определенным тем тегом. Поскольку базовый URL является свойством, он может, конечно, быть установлен непосредственно.
Механизм хранения контента значения по умолчанию для этого документа является буфером разрыва (GapContent). Альтернативы могут быть предоставлены при использовании конструктора, который берет a Content реализация.
В дополнение к методам, обеспеченным Документом и StyledDocument для того, чтобы видоизменить HTMLDocument, HTMLDocument обеспечивает много методов удобства. Следующие методы могут использоваться, чтобы вставить контент HTML в существующий документ.
setInnerHTML(Element, String)setOuterHTML(Element, String)insertBeforeStart(Element, String)insertAfterStart(Element, String)insertBeforeEnd(Element, String)insertAfterEnd(Element, String)Следующие примеры иллюстрируют использование этих методов. Каждый пример предполагает, что документ HTML инициализируется следующим образом:
JEditorPane p = new JEditorPane();
p.setContentType("text/html");
p.setText("..."); // Document text is provided below.
HTMLDocument d = (HTMLDocument) p.getDocument();
Со следующим контентом HTML:
<html>
<head>
<title>An example HTMLDocument</title>
<style type="text/css">
div { background-color: silver; }
ul { color: red; }
</style>
</head>
<body>
<div id="BOX">
<p>Paragraph 1</p>
<p>Paragraph 2</p>
</div>
</body>
</html>
Все методы для того, чтобы изменить документ HTML требуют Element. Элементы могут быть получены из документа HTML при использовании метода getElement(Element e, Object attribute, Object value). Это возвращает первый порожденный элемент, который содержит указанный атрибут с данным значением в порядке в глубину. Например, d.getElement(d.getDefaultRootElement(), StyleConstants.NameAttribute, HTML.Tag.P) возвращает первый элемент абзаца.
Удобный ярлык для того, чтобы определить местоположение элементов является методом getElement(String); возвращает элемент чей ID припишите соответствует указанное значение. Например, d.getElement("BOX") возвраты DIV элемент.
getIterator(HTML.Tag t) метод может также использоваться для того, чтобы найти все возникновения указанного HTML-тэга в документе.
Элементы могут быть вставлены прежде или после существующих дочерних элементов любого нелистового элемента при использовании методов insertAfterStart и insertBeforeEnd. Например, если e DIV элемент, d.insertAfterStart(e, "<ul><li>List Item</li></ul>") вставляет список перед первым абзацем, и d.insertBeforeEnd(e, "<ul><li>List Item</li></ul>") вставляет список после последнего абзаца. DIV блок становится родителем недавно вставленных элементов.
Одноуровневые элементы могут быть вставлены прежде или после любого элемента при использовании методов insertBeforeStart и insertAfterEnd. Например, если e DIV элемент, d.insertBeforeStart(e, "<ul><li>List Item</li></ul>") вставляет список перед DIV элемент, и d.insertAfterEnd(e, "<ul><li>List Item</li></ul>") вставляет список после DIV элемент. Недавно вставленные элементы становятся одноуровневыми элементами DIV элемент.
Элементы и все их потомки могут быть заменены при использовании методов setInnerHTML и setOuterHTML. Например, если e DIV элемент, d.setInnerHTML(e, "<ul><li>List Item</li></ul>") замены все дочерние абзацы со списком, и d.setOuterHTML(e, "<ul><li>List Item</li></ul>") замены DIV элемент непосредственно. В последнем случае родитель списка BODY элемент.
Следующая таблица показывает документ в качестве примера и результаты различных методов, описанных выше.
| Пример | insertAfterStart |
insertBeforeEnd |
insertBeforeStart |
insertAfterEnd |
setInnerHTML |
setOuterHTML |
|---|---|---|---|---|---|---|
|
Абзац 1 Абзац 2 |
Абзац 1 Абзац 2 |
Абзац 1 Абзац 2
|
Абзац 1 Абзац 2 |
Абзац 1 Абзац 2
|
|
|
Предупреждение: Сериализированные объекты этого class не будут совместимыми с будущими выпусками Swing. Текущая поддержка сериализации является подходящей для краткосрочного хранения или RMI между приложениями, выполняющими ту же самую версию Swing. С 1.4, поддержка длительного хранения всего JavaBeansTM была добавлена к java.beans пакет. Пожалуйста, см. XMLEncoder.
| Модификатор и Тип | Класс и Описание |
|---|---|
class |
HTMLDocument. BlockElement
Элемент, который представляет структурный блок HTML.
|
class |
HTMLDocument. HTMLReader
Читатель HTML, чтобы загрузить документ HTML структурой элемента HTML.
|
static class |
HTMLDocument. Iterator
iterator, чтобы выполнить итерации по определенному типу тега.
|
class |
HTMLDocument. RunElement
Элемент, который представляет блок текста, у которого есть ряд атрибутов уровня символа HTML, присвоенных этому.
|
DefaultStyledDocument.AttributeUndoableEdit, DefaultStyledDocument.ElementBuffer, DefaultStyledDocument.ElementSpec, DefaultStyledDocument.SectionElementAbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement| Модификатор и Тип | Поле и Описание |
|---|---|
static String |
AdditionalComments
Значение ключа свойства документа.
|
buffer, BUFFER_SIZE_DEFAULTBAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementNameStreamDescriptionProperty, TitleProperty| Конструктор и Описание |
|---|
HTMLDocument()
Создает документ HTML, используя размер буфера значения по умолчанию и значение по умолчанию
StyleSheet. |
HTMLDocument(AbstractDocument.Content c, StyleSheet styles)
Создает документ HTML с данной реализацией хранения контента и данным механизмом хранения стиля/атрибута.
|
HTMLDocument(StyleSheet styles)
Создает документ HTML с реализацией хранения контента значения по умолчанию и указанным механизмом хранения стиля/атрибута.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
protected void |
create(DefaultStyledDocument.ElementSpec[] data)
Заменяет содержание документа с данными спецификациями элемента.
|
protected Element |
createBranchElement(Element parent, AttributeSet a)
Создает элемент ответвления документа, который может содержать другие элементы.
|
protected AbstractDocument.AbstractElement |
createDefaultRoot()
Создает корневой элемент, который будет использоваться, чтобы представить структуру документа значения по умолчанию.
|
protected Element |
createLeafElement(Element parent, AttributeSet a, int p0, int p1)
Создает листовой элемент документа, который непосредственно представляет текст (не имеет никаких дочерних элементов).
|
protected void |
fireChangedUpdate(DocumentEvent e)
Уведомляет всех слушателей, которые зарегистрировали интерес для уведомления на этом типе события.
|
protected void |
fireUndoableEditUpdate(UndoableEditEvent e)
Уведомляет всех слушателей, которые зарегистрировали интерес для уведомления на этом типе события.
|
URL |
getBase()
Возвращает расположение, чтобы разрешить относительные URL против.
|
Элемент |
getElement(Element e, Object attribute, Object value)
Возвращает дочерний элемент
e это содержит атрибут, attribute со значением value, или null если Вы не находитесь. |
Элемент |
getElement(String id)
Возвращает элемент, у которого есть данный идентификатор
Attribute. |
HTMLDocument. Iterator |
getIterator(HTML.Tag t)
Выбирает iterator для указанного HTML-тэга.
|
HTMLEditorKit. Синтаксический анализатор |
getParser()
Возвращает синтаксический анализатор, который используется, вставляя HTML в существующий документ.
|
boolean |
getPreservesUnknownTags()
Возвращает поведение, которое синтаксический анализатор наблюдает, встречаясь с неизвестными тегами.
|
HTMLEditorKit. ParserCallback |
getReader(int pos)
Выбирает читателя для синтаксического анализатора, чтобы использовать, загружая документ HTML.
|
HTMLEditorKit. ParserCallback |
getReader(int pos, int popDepth, int pushDepth, HTML.Tag insertTag)
Возвращает читателя для синтаксического анализатора, чтобы использовать, чтобы загрузить документ HTML.
|
StyleSheet |
getStyleSheet()
Выборки
StyleSheet со специфичными для документа правилами дисплея (CSS), который был определен в документе HTML непосредственно. |
int |
getTokenThreshold()
Заставляет число маркеров буферизовать прежде, чем попытаться обновить структуру элемента документов.
|
protected void |
insert(int offset, DefaultStyledDocument.ElementSpec[] data)
Вставляет новые элементы оптом.
|
void |
insertAfterEnd(Element elem, String htmlText)
Вставляет HTML, определенный как строка после конец данного элемента.
|
void |
insertAfterStart(Element elem, String htmlText)
Вставляет HTML, определенный как строка в начале элемента.
|
void |
insertBeforeEnd(Element elem, String htmlText)
Вставляет HTML, определенный как строка в конце элемента.
|
void |
insertBeforeStart(Element elem, String htmlText)
Вставляет HTML, определенный как строка перед запуском данного элемента.
|
protected void |
insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
Структура документа обновлений в результате вставки текста.
|
void |
processHTMLFrameHyperlinkEvent(HTMLFrameHyperlinkEvent e)
Процессы
HyperlinkEvents это сгенерировано документами во фрейме HTML. |
void |
setBase(URL u)
Устанавливает расположение, чтобы разрешить относительные URL против.
|
void |
setInnerHTML(Element elem, String htmlText)
Заменяет дочерние элементы данного элемента с содержанием, определенным как строка HTML.
|
void |
setOuterHTML(Element elem, String htmlText)
Заменяет данный элемент в родителе с содержанием, определенным как строка HTML.
|
void |
setParagraphAttributes(int offset, int length, AttributeSet s, boolean replace)
Наборы приписывают для абзаца.
|
void |
setParser(HTMLEditorKit.Parser parser)
Устанавливает синтаксический анализатор, который используется методами, которые вставляют html в существующий документ, такой как
setInnerHTML, и setOuterHTML. |
void |
setPreservesUnknownTags(boolean preservesTags)
Определяет, как неизвестные теги обрабатываются синтаксическим анализатором.
|
void |
setTokenThreshold(int n)
Определяет номер маркеров, чтобы буферизовать прежде, чем попытаться обновить структуру элемента документов.
|
addDocumentListener, addStyle, getBackground, getCharacterElement, getDefaultRootElement, getFont, getForeground, getLogicalStyle, getParagraphElement, getStyle, getStyleNames, removeDocumentListener, removeElement, removeStyle, removeUpdate, setCharacterAttributes, setLogicalStyle, styleChangedaddUndoableEditListener, createPosition, dump, fireInsertUpdate, fireRemoveUpdate, 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, writeUnlockclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddUndoableEditListener, createPosition, getEndPosition, getLength, getProperty, getRootElements, getStartPosition, getText, getText, insertString, putProperty, remove, removeUndoableEditListener, renderpublic static final String AdditionalComments
public HTMLDocument()
StyleSheet. Это - метод удобства для конструктора HTMLDocument(Content, StyleSheet).public HTMLDocument(StyleSheet styles)
HTMLDocument(Content, StyleSheet).styles - стилиpublic HTMLDocument(AbstractDocument.Content c, StyleSheet styles)
c - контейнер для контентаstyles - стилиpublic HTMLEditorKit.ParserCallback getReader(int pos)
HTMLDocument.HTMLReader. Подклассы могут повторно реализовать этот метод, чтобы измениться, как документ структурируется при желании. (Например, чтобы обработать пользовательские теги, или структурно представить символ разрабатывают элементы.)pos - стартовая позицияpublic HTMLEditorKit.ParserCallback getReader(int pos, int popDepth, int pushDepth, HTML.Tag insertTag)
HTMLDocument.HTMLReader. Подклассы могут повторно реализовать этот метод, чтобы измениться, как документ структурируется при желании. (Например, чтобы обработать пользовательские теги, или структурно представить символ разрабатывают элементы.) Это - метод удобства для getReader(int, int, int, HTML.Tag, TRUE).
popDepth - число ElementSpec.EndTagTypes генерировать перед вставкойpushDepth - число ElementSpec.StartTagTypes с направлением ElementSpec.JoinNextDirection это должно быть сгенерировано перед вставкой, но после того, как были сгенерированы конечные тэгиinsertTag - первый тег, который начнет вставлять в документpublic URL getBase()
public void setBase(URL u)
Это также устанавливает основу StyleSheet быть u так же как основа документа.
u - требуемый базовый URLprotected void insert(int offset,
DefaultStyledDocument.ElementSpec[] data)
throws BadLocationException
insert в class DefaultStyledDocumentoffset - запуск смещаетсяdata - данные элементаBadLocationException - если данная позиция не представляет допустимое расположение в ассоциированном документе.protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
insertUpdate в class DefaultStyledDocumentchng - описание изменения документаattr - атрибутыprotected void create(DefaultStyledDocument.ElementSpec[] data)
create в class DefaultStyledDocumentdata - новое содержание документаpublic void setParagraphAttributes(int offset,
int length,
AttributeSet s,
boolean replace)
Этот метод ориентирован на многопотоковое исполнение, хотя большинство методов Swing не. Пожалуйста, см. для получения дополнительной информации.
setParagraphAttributes в интерфейсе StyledDocumentsetParagraphAttributes в class DefaultStyledDocumentoffset - смещение в абзац (должны быть по крайней мере 0),length - число символов, на которые влияют (должны быть по крайней мере 0),s - атрибутыreplace - заменить ли существующие атрибуты, или объединить ихpublic StyleSheet getStyleSheet()
StyleSheet со специфичными для документа правилами дисплея (CSS), который был определен в документе HTML непосредственно.StyleSheetpublic HTMLDocument.Iterator getIterator(HTML.Tag t)
t - требуемый HTML.TagIterator для данного HTML-тэгаHTML.Tagprotected Element createLeafElement(Element parent, AttributeSet a, int p0, int p1)
HTMLDocument.RunElement.createLeafElement в class AbstractDocumentparent - родительский элементa - атрибуты для элементаp0 - начало диапазона (должны быть по крайней мере 0),p1 - конец диапазона (должен быть, по крайней мере, p0),protected Element createBranchElement(Element parent, AttributeSet a)
HTMLDocument.BlockElement.createBranchElement в class AbstractDocumentparent - родительский элементa - атрибутыprotected AbstractDocument.AbstractElement createDefaultRoot()
createDefaultRoot в class DefaultStyledDocumentpublic void setTokenThreshold(int n)
n - число маркеров, чтобы буферизоватьpublic int getTokenThreshold()
Integer.MAX_VALUE.public void setPreservesUnknownTags(boolean preservesTags)
preservesTags - истина, если неизвестные теги должны быть сохранены в модели, иначе тегирует, отбрасываютсяHTML.Tagpublic boolean getPreservesUnknownTags()
HTML.Tagpublic void processHTMLFrameHyperlinkEvent(HTMLFrameHyperlinkEvent e)
HyperlinkEvents это сгенерировано документами во фрейме HTML. HyperlinkEvent введите, как параметр предполагает, HTMLFrameHyperlinkEvent. В дополнение к типичной информации, содержавшейся в a HyperlinkEvent, это событие содержит элемент, который соответствует фрейму, в котором щелчок произошел (исходный элемент) и целевое имя. У целевого имени есть 4 возможных значения: HTML.Attribute.SRC атрибут и огни a ChangedUpdate событие. Если цель является _parent, то это удаляет родительский элемент, который является элементом <FRAMESET>, и вставляет новое <ФРЕЙМ> элемент, и устанавливает HTML.Attribute.SRC атрибут, чтобы иметь значение, равное месту назначения URL и запустить a RemovedUpdate и InsertUpdate.
Если цель является _top, этот метод ничего не делает. В реализации представления для фрейма, а именно, FrameView, обработка _top обрабатывается., Учитывая, что _top подразумевает замену всего документа, имело смысл обрабатывать это за пределами документа, который это заменит.
Если цель является именованным фреймом, то иерархия элемента ищется элемент с именем, равным цели, HTML.Attribute.SRC атрибут обновляется и a ChangedUpdate событие запускается.
e - событиеpublic void setParser(HTMLEditorKit.Parser parser)
setInnerHTML, и setOuterHTML.
HTMLEditorKit.createDefaultDocument установит синтаксический анализатор для Вас. Если Вы создаете HTMLDocument вручную, убедитесь и установите синтаксический анализатор соответственно.
parser - синтаксический анализатор, который будет использоваться для вставки текстаpublic HTMLEditorKit.Parser getParser()
public void setInnerHTML(Element elem, String htmlText) throws BadLocationException, IOException
Это будет замечено, поскольку по крайней мере два события, n вставляет сопровождаемый удалением.
Рассмотрите следующую структуру ( elem параметр полужирным).
<body>
|
<div>
/ \
<p> <p>
Вызов setInnerHTML(elem, "<ul><li>") результаты в следующей структуре (новые элементы находятся в красном).
<body>
|
<div>
\
<ul>
\
<li>
Параметр elem не должен быть листовой элемент, иначе IllegalArgumentException бросается. Если также elem или htmlText параметр null, никакие изменения не производятся в документе.
Для этого, чтобы работать correcty, документ должен иметь HTMLEditorKit.Parser набор. Это будет иметь место, создавался ли документ из HTMLEditorKit через createDefaultDocument метод.
elem - элемент ответвления, дочерние элементы которого будут замененыhtmlText - строка, которая будет проанализирована и присвоена elemIllegalArgumentException - если elem листIllegalStateException - если HTMLEditorKit.Parser не был определенBadLocationExceptionIOExceptionpublic void setOuterHTML(Element elem, String htmlText) throws BadLocationException, IOException
Это будет замечено, поскольку по крайней мере два события, n вставляет сопровождаемый удалением.
Заменяя лист это попытается удостовериться, что есть подарок новой строки, если Вы необходимы. Это может привести к дополнительному вставляемому элементу. Рассмотрите, если Вы должны были заменить символьный элемент, который содержал новую строку с <img>, это создаст два элемента, один для изображения, ane один для новой строки.
Если Вы попытаетесь заменить элемент подробно, то Вы наиболее вероятно закончите с двумя элементами, eg setOuterHTML(getCharacterElement (getLength()), "blah") приведет к двум листовым элементам в конце, одно представление 'вздор', и другое представление элемента конца.
Рассмотрите следующую структуру ( elem параметр полужирным).
<body>
|
<div>
/ \
<p> <p>
Вызов setOuterHTML(elem, "<ul><li>") результаты в следующей структуре (новые элементы находятся в красном).
<body>
|
<ul>
\
<li>
Если также elem или htmlText параметр null, никакие изменения не производятся в документе.
Для этого, чтобы работать correcty, у документа должен быть HTMLEditorKit. Синтаксический анализатор устанавливается. Это будет иметь место, создавался ли документ из HTMLEditorKit через createDefaultDocument метод.
elem - элемент, чтобы заменитьhtmlText - строка, которая будет проанализирована и вставлена вместо elemIllegalStateException - если HTMLEditorKit. Синтаксический анализатор не был установленBadLocationExceptionIOExceptionpublic void insertAfterStart(Element elem, String htmlText) throws BadLocationException, IOException
Рассмотрите следующую структуру ( elem параметр полужирным).
<body>
|
<div>
/ \
<p> <p>
Вызов insertAfterStart(elem, "<ul><li>") результаты в следующей структуре (новые элементы находятся в красном).
<body>
|
<div>
/ | \
<ul> <p> <p>
/
<li>
В отличие от этого insertBeforeStart метод, новые элементы становятся дочерними элементами указанного элемента, не одноуровневыми элементами.
Параметр elem не должен быть листовой элемент, иначе IllegalArgumentException бросается. Если также elem или htmlText параметр null, никакие изменения не производятся в документе.
Для этого, чтобы работать correcty, документ должен иметь HTMLEditorKit.Parser набор. Это будет иметь место, создавался ли документ из HTMLEditorKit через createDefaultDocument метод.
elem - элемент ответвления, чтобы быть корнем для нового текстаhtmlText - строка, которая будет проанализирована и присвоена elemIllegalArgumentException - если elem листIllegalStateException - если HTMLEditorKit. Синтаксический анализатор не был установлен на документеBadLocationExceptionIOExceptionpublic void insertBeforeEnd(Element elem, String htmlText) throws BadLocationException, IOException
Если elem's дочерние элементы листы, и символ в a elem.getEndOffset() - 1 новая строка, это вставит перед новой строкой так, чтобы не было текста после новой строки.
Рассмотрите следующую структуру ( elem параметр полужирным).
<body>
|
<div>
/ \
<p> <p>
Вызов insertBeforeEnd(elem, "<ul><li>") результаты в следующей структуре (новые элементы находятся в красном).
<body>
|
<div>
/ | \
<p> <p> <ul>
\
<li>
В отличие от этого insertAfterEnd метод, новые элементы становятся дочерними элементами указанного элемента, не одноуровневыми элементами.
Параметр elem не должен быть листовой элемент, иначе IllegalArgumentException бросается. Если также elem или htmlText параметр null, никакие изменения не производятся в документе.
Для этого, чтобы работать correcty, документ должен иметь HTMLEditorKit.Parser набор. Это будет иметь место, создавался ли документ из HTMLEditorKit через createDefaultDocument метод.
elem - элемент, чтобы быть корнем для нового текстаhtmlText - строка, которая будет проанализирована и присвоена elemIllegalArgumentException - если elem листIllegalStateException - если HTMLEditorKit. Синтаксический анализатор не был установлен на документеBadLocationExceptionIOExceptionpublic void insertBeforeStart(Element elem, String htmlText) throws BadLocationException, IOException
Рассмотрите следующую структуру ( elem параметр полужирным).
<body>
|
<div>
/ \
<p> <p>
Вызов insertBeforeStart(elem, "<ul><li>") результаты в следующей структуре (новые элементы находятся в красном).
<body>
/ \
<ul> <div>
/ / \
<li> <p> <p>
В отличие от этого insertAfterStart метод, новые элементы становятся одноуровневыми элементами указанного элемента, не дочерними элементами.
Если также elem или htmlText параметр null, никакие изменения не производятся в документе.
Для этого, чтобы работать correcty, документ должен иметь HTMLEditorKit.Parser набор. Это будет иметь место, создавался ли документ из HTMLEditorKit через createDefaultDocument метод.
elem - элемент контент вставляется преждеhtmlText - строка, которая будет проанализирована и вставлена прежде elemIllegalStateException - если HTMLEditorKit. Синтаксический анализатор не был установлен на документеBadLocationExceptionIOExceptionpublic void insertAfterEnd(Element elem, String htmlText) throws BadLocationException, IOException
Рассмотрите следующую структуру ( elem параметр полужирным).
<body>
|
<div>
/ \
<p> <p>
Вызов insertAfterEnd(elem, "<ul><li>") результаты в следующей структуре (новые элементы находятся в красном).
<body>
/ \
<div> <ul>
/ \ \
<p> <p> <li>
В отличие от этого insertBeforeEnd метод, новые элементы становятся одноуровневыми элементами указанного элемента, не дочерними элементами.
Если также elem или htmlText параметр null, никакие изменения не производятся в документе.
Для этого, чтобы работать correcty, документ должен иметь HTMLEditorKit.Parser набор. Это будет иметь место, создавался ли документ из HTMLEditorKit через createDefaultDocument метод.
elem - элемент контент вставляется послеhtmlText - строка, которая будет проанализирована и вставлена после elemIllegalStateException - если HTMLEditorKit. Синтаксический анализатор не был установлен на документеBadLocationExceptionIOExceptionpublic Element getElement(String id)
Attribute. Если элемент не может быть найден, null возвращается. Отметьте, что этот метод продолжает работать Attribute, не символьный тег. В следующем отрывке HTML: <a id="HelloThere"> атрибут является 'идентификатором', и символьный тег. Это - метод удобства для getElement(RootElement, HTML.Attribute.id, id). Это не ориентировано на многопотоковое исполнение.id - строка, представляющая требуемый AttributeAttribute или null если это не может быть найдено, или null если id nullHTML.Attributepublic Element getElement(Element e, Object attribute, Object value)
e это содержит атрибут, attribute со значением value, или null если Вы не находитесь. Это не ориентировано на многопотоковое исполнение.e - корневой элемент, где поиск начинаетсяattribute - требуемый Attributevalue - значения для указанного AttributeAttribute и указанное value, или null если это не может быть найденоHTML.Attributeprotected void fireChangedUpdate(DocumentEvent e)
fireChangedUpdate в class AbstractDocumente - событиеEventListenerListprotected void fireUndoableEditUpdate(UndoableEditEvent e)
fireUndoableEditUpdate в class AbstractDocumente - событиеEventListenerList
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
ЧЕРНОВАЯ земля-b92