- すべての実装されたインタフェース:
- Serializable,- Document,- StyledDocument
HTMLDocument.HTMLReaderクラスによって構築されます。このクラスは、パーサーに必要なHTMLEditorKit.ParserCallbackプロトコルを実装しています。 構造を変更するには、HTMLReaderをサブクラス化し、getReader(int)メソッドを実装し直して新しいリーダーの実装を返すようにします。 生成されるデフォルトの構造については、HTMLReaderのドキュメントを参照してください。 デフォルトの構造は、ドキュメントのコンテンツが損なわれないことを意図して実装されていますが、HTMLフォーマットを生成し直すときに異なったフォーマットになることもあります。 
 このドキュメントはHTMLをモデル化するだけで、ビューの属性をその中に格納しようとはしません。 要素は、StyleContext.NameAttribute属性によって識別されます。この属性は必ず、要素の種類を識別するHTML.Tag型の値を持っています。 要素の中には合成されるもの(コメントなど)もあります。 HTMLFactoryはこの属性を使用して、構築するビューの種類を決定します。 
このドキュメントは、追加読込みをサポートしています。 TokenThresholdプロパティにより、どれくらいの量の解析がバッファに格納されるとドキュメントの要素構造の更新を行うかを制御します。 このプロパティは、EditorKitで設定されるため、サブクラスから無効にすることができます。 
Baseプロパティは、相対URLをどのURLに対して解決するかを決定します。 プロパティの値がURLの場合、デフォルトでは、これはDocument.StreamDescriptionPropertyになります。 <BASE>タグが検出された場合、ベースは、そのタグで指定されたURLになります。 ベースURLはプロパティなので、直接設定できます。 
このドキュメントで使用するデフォルトのコンテンツ・ストレージ・メカニズムは、ギャップ・バッファ(GapContent)です。 別のメカニズムを指定するには、Contentの実装を引数に取るコンストラクタを使います。 
HTMLDocumentの変更
HTMLDocumentを変更するためにDocumentやStyledDocumentによって提供されているメソッドのほかに、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: blue; }
     </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 | 
|---|---|---|---|---|---|---|
| Paragraph 1 Paragraph 2 | 
 Paragraph 1 Paragraph 2 | Paragraph 1 Paragraph 2 
 | 
 Paragraph 1 Paragraph 2 | Paragraph 1 Paragraph 2 
 | 
 | 
 | 
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。 
- 
ネストされたクラスのサマリーネストされたクラス修飾子と型クラス説明classHTMLの構造ブロックを表す要素です。classHTMLドキュメントをHTML要素構造とともにロードするためのHTMLリーダーです。static class特定のタイプのタグに対して繰返し処理を実行するイテレータです。classHTML文字レベル属性のセットが割り当てられているテキストのチャンクを表す要素です。クラス javax.swing.text.DefaultStyledDocumentで宣言されたネストされたクラス/インタフェースDefaultStyledDocument.AttributeUndoableEdit, DefaultStyledDocument.ElementBuffer, DefaultStyledDocument.ElementSpec, DefaultStyledDocument.SectionElementクラス javax.swing.text.AbstractDocumentで宣言されたネストされたクラス/インタフェースAbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement
- 
フィールドのサマリーフィールドクラス javax.swing.text.DefaultStyledDocumentで宣言されたフィールドbuffer, BUFFER_SIZE_DEFAULTクラス javax.swing.text.AbstractDocumentで宣言されたフィールドBAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementNameインタフェース javax.swing.text.Documentで宣言されたフィールドStreamDescriptionProperty, TitleProperty
- 
コンストラクタのサマリーコンストラクタコンストラクタ説明デフォルトのバッファ・サイズとデフォルトのStyleSheetを使用してHTMLドキュメントを構築します。HTMLDocument(AbstractDocument.Content c, StyleSheet styles)指定されたコンテンツ・ストレージの実装と、指定されたスタイル/属性のストレージ・メカニズムとを使ってHTMLドキュメントを作成します。HTMLDocument(StyleSheet styles)デフォルトのコンテンツ・ストレージの実装と指定したスタイル/属性のストレージ・メカニズムを使用してHTMLドキュメントを構築します。
- 
メソッドのサマリー修飾子と型メソッド説明protected voidcreate(DefaultStyledDocument.ElementSpec[] data)ドキュメントのコンテンツを、指定された要素仕様に置換します。protected ElementcreateBranchElement(Element parent, AttributeSet a)ドキュメントの枝の要素を作成します。この要素には、ほかの要素(複数可)を含めることができます。protected AbstractDocument.AbstractElementデフォルトのドキュメント構造を表すために使うルート要素を作成します。protected ElementcreateLeafElement(Element parent, AttributeSet a, int p0, int p1)テキストを直接表す(子を持たない)ドキュメントの葉の要素を作成します。protected voidこのイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。protected voidこのイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。getBase()相対URLを解決処理する位置を返します。getElement(String id)指定したidAttributeを持つ要素を返します。getElement(Element e, Object attribute, Object value)属性(値valueを持つattribute)を格納するeの子要素を返します。見つからない場合はnullを返します。getIterator(HTML.Tag t)指定したHTMLタグのイテレータを取得します。既存のドキュメントにhtmlを挿入するときに使用するパーサーを返します。boolean未知のタグが見つかったときにパーサーの監視する動作を返します。getReader(int pos)パーサーがHTMLドキュメントをロードするときに使うリーダーを取得します。パーサーがHTMLドキュメントをロードするために使うリーダーを返します。HTMLドキュメント自体が指定するドキュメント固有の表示規則(CSS)を持つ、StyleSheetを取得します。intドキュメントの要素構造の更新前に、バッファに格納されるトークンの数を取得します。protected voidinsert(int offset, DefaultStyledDocument.ElementSpec[] data)新しい要素を一括して挿入します。voidinsertAfterEnd(Element elem, String htmlText)指定された要素の最後の後に文字列として指定されたHTMLを挿入します。voidinsertAfterStart(Element elem, String htmlText)要素の開始位置に文字列として指定されたHTMLを挿入します。voidinsertBeforeEnd(Element elem, String htmlText)要素の終了位置に文字列として指定されたHTMLを挿入します。voidinsertBeforeStart(Element elem, String htmlText)指定された要素が開始される前に文字列として指定されたHTMLを挿入します。protected voidドキュメント構造をテキスト挿入の結果で更新します。voidHTMLフレーム内でドキュメントによって生成されたHyperlinkEventsの処理をします。void相対URLを解決処理する位置を設定します。voidsetInnerHTML(Element elem, String htmlText)指定された要素の子をHTML文字列として指定されたコンテンツと置き換えます。voidsetOuterHTML(Element elem, String htmlText)指定された親の要素をHTML文字列として指定されたコンテンツと置き換えます。voidsetParagraphAttributes(int offset, int length, AttributeSet s, boolean replace)段落に属性を設定します。voidsetParser(HTMLEditorKit.Parser parser)既存のドキュメントにsetInnerHTMLやsetOuterHTMLなどのhtmlを挿入するときにメソッドが使用するパーサーを設定します。voidsetPreservesUnknownTags(boolean preservesTags)パーサーによる未知のタグの処理方法を判定します。voidsetTokenThreshold(int n)ドキュメントの要素構造の更新前に、バッファに格納されるトークンの数を設定します。クラス javax.swing.text.DefaultStyledDocumentで宣言されたメソッドaddDocumentListener, addStyle, getBackground, getCharacterElement, getDefaultRootElement, getFont, getForeground, getLogicalStyle, getParagraphElement, getStyle, getStyleNames, removeDocumentListener, removeElement, removeStyle, removeUpdate, setCharacterAttributes, setLogicalStyle, styleChangedクラス javax.swing.text.AbstractDocumentで宣言されたメソッドaddUndoableEditListener, 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, 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
- 
フィールド詳細
- 
コンストラクタの詳細- 
HTMLDocumentpublic HTMLDocument()デフォルトのバッファ・サイズとデフォルトのStyleSheetを使用してHTMLドキュメントを構築します。 これは、コンストラクタHTMLDocument(Content, StyleSheet)の簡易メソッドです。
- 
HTMLDocumentpublic HTMLDocument(StyleSheet styles)デフォルトのコンテンツ・ストレージの実装と指定したスタイル/属性のストレージ・メカニズムを使用してHTMLドキュメントを構築します。 これは、コンストラクタHTMLDocument(Content, StyleSheet)の簡易メソッドです。- パラメータ:
- styles- スタイル
 
- 
HTMLDocumentpublic HTMLDocument(AbstractDocument.Content c, StyleSheet styles)指定されたコンテンツ・ストレージの実装と、指定されたスタイル/属性のストレージ・メカニズムとを使ってHTMLドキュメントを作成します。- パラメータ:
- c- コンテンツのコンテナ
- styles- スタイル
 
 
- 
- 
メソッドの詳細- 
getReaderpublic HTMLEditorKit.ParserCallback getReader(int pos)パーサーがHTMLドキュメントをロードするときに使うリーダーを取得します。 このメソッドはHTMLDocument.HTMLReaderのインスタンスを返すために実装されます。 サブクラスは、必要であれば、このメソッドを再実装してドキュメントの構造化手段を変更できます。 (カスタム・タグや文字スタイル要素の構造的表現の処理などが目的です。)- パラメータ:
- pos- 開始位置
- 戻り値:
- パーサーがドキュメントをロードするために使うリーダー
 
- 
getReaderpublic HTMLEditorKit.ParserCallback getReader(int pos, int popDepth, int pushDepth, HTML.Tag insertTag)パーサーがHTMLドキュメントをロードするために使うリーダーを返します。 このメソッドはHTMLDocument.HTMLReaderのインスタンスを返すために実装されます。 サブクラスは、必要であれば、このメソッドを再実装してドキュメントの構造化手段を変更できます。 (カスタム・タグや文字スタイル要素の構造的表現の処理などが目的です。)これは getReader(int, int, int, HTML.Tag, TRUE)の簡易メソッドです。- パラメータ:
- pos- 開始位置
- popDepth- 挿入前に生成される- ElementSpec.EndTagTypesタグの数
- pushDepth- 終了タグの生成後、挿入前に生成される- ElementSpec.JoinNextDirectionの方向を持つ- ElementSpec.StartTagTypesタグの数
- insertTag- ドキュメントへの挿入を開始する最初のタグ
- 戻り値:
- パーサーがドキュメントをロードするために使うリーダー
 
- 
getBasepublic URL getBase()相対URLを解決処理する位置を返します。 デフォルトではこの位置は、ドキュメントがURLからロードされた場合にはドキュメントのURLになります。 ベース・タグが見つかり、解析できる場合には、それをベース位置として使用します。- 戻り値:
- ベース位置
 
- 
setBasepublic void setBase(URL u)相対URLを解決処理する位置を設定します。 デフォルトではこの位置は、ドキュメントがURLからロードされた場合にはドキュメントのURLになります。 ベース・タグが見つかり、解析できる場合には、それをベース位置として使用します。StyleSheetのベースをuとドキュメントのベースに設定します。- パラメータ:
- u- 該当するベースURL
 
- 
insertprotected void insert(int offset, DefaultStyledDocument.ElementSpec[] data) throws BadLocationException新しい要素を一括して挿入します。 要素はこのようにしてドキュメント内に作成されます。 解析によりどのような構造が必要であるかを決め、ドキュメントに書込みロックがかかっていない間に、編集を記述するトークンのセットとして仕様を作成します。 このメソッドは、リーダーによってまとめて呼び出されて、短時間の間(つまり、ドキュメントが実際に変更されている間)書込みロックを得ます。- オーバーライド:
- insert、クラス:- DefaultStyledDocument
- パラメータ:
- offset- 開始オフセット
- data- 要素データ
- 例外:
- BadLocationException- 指定された位置が、関連するドキュメント内の有効な位置を示さない場合。
 
- 
insertUpdateprotected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)ドキュメント構造をテキスト挿入の結果で更新します。 これは、書込みロック内で発生します。 この実装は、挿入されたコンテンツを単に改行ごとに構文解析し、要素バッファに対する一連の指示を構築します。- オーバーライド:
- insertUpdate、クラス:- DefaultStyledDocument
- パラメータ:
- chng- ドキュメント変更の説明
- attr- 属性
 
- 
createprotected void create(DefaultStyledDocument.ElementSpec[] data)ドキュメントのコンテンツを、指定された要素仕様に置換します。 このメソッドは、ロードがまとめて完了した場合、挿入の前に呼び出されます。 ドキュメント全体を一度にまとめてロードする場合に呼び出される、唯一のメソッドです。- オーバーライド:
- create、クラス:- DefaultStyledDocument
- パラメータ:
- data- ドキュメントの新しいコンテンツ
 
- 
setParagraphAttributespublic void setParagraphAttributes(int offset, int length, AttributeSet s, boolean replace)段落に属性を設定します。このメソッドはスレッド・セーフですが、ほとんどのSwingメソッドは違います。 詳細は、Swingでの並行性に関連しているサイトを参照してください。 - 定義:
- setParagraphAttributes、インタフェース:- StyledDocument
- オーバーライド:
- setParagraphAttributes、クラス:- DefaultStyledDocument
- パラメータ:
- offset- 段落に対するオフセット(最小でも0でなければならない)
- length- 影響を受ける文字数(最小でも0でなければならない)
- s- 属性
- replace- 既存の属性を置換するか、マージするか
 
- 
getStyleSheetpublic StyleSheet getStyleSheet()HTMLドキュメント自体が指定するドキュメント固有の表示規則(CSS)を持つ、StyleSheetを取得します。- 戻り値:
- StyleSheet
 
- 
getIteratorpublic HTMLDocument.Iterator getIterator(HTML.Tag t)指定したHTMLタグのイテレータを取得します。 包含されているアンカーのセットでの繰返し処理や、入力要素での繰返し処理などで使用されます。- パラメータ:
- t- 要求された- HTML.Tag
- 戻り値:
- 指定したHTMLタグのIterator
- 関連項目:
- HTML.Tag
 
- 
createLeafElementprotected Element createLeafElement(Element parent, AttributeSet a, int p0, int p1)テキストを直接表す(子を持たない)ドキュメントの葉の要素を作成します。HTMLDocument.RunElement型の要素を返すために実装されます。- オーバーライド:
- createLeafElement、クラス:- AbstractDocument
- パラメータ:
- parent- 親要素
- a- 要素の属性
- p0- 範囲の始点(最小でも0でなければならない)
- p1- 範囲の終点(最小でもp0でなければならない)
- 戻り値:
- 新規要素
 
- 
createBranchElementprotected Element createBranchElement(Element parent, AttributeSet a)ドキュメントの枝の要素を作成します。この要素には、ほかの要素(複数可)を含めることができます。 これは、HTMLDocument.BlockElement型の要素を返すために実装されます。- オーバーライド:
- createBranchElement、クラス:- AbstractDocument
- パラメータ:
- parent- 親要素
- a- 属性
- 戻り値:
- 要素
 
- 
createDefaultRootprotected AbstractDocument.AbstractElement createDefaultRoot()デフォルトのドキュメント構造を表すために使うルート要素を作成します。- オーバーライド:
- createDefaultRoot、クラス:- DefaultStyledDocument
- 戻り値:
- 要素ベース
 
- 
setTokenThresholdpublic void setTokenThreshold(int n)ドキュメントの要素構造の更新前に、バッファに格納されるトークンの数を設定します。- パラメータ:
- n- バッファに格納されるトークンの数
 
- 
getTokenThresholdpublic int getTokenThreshold()ドキュメントの要素構造の更新前に、バッファに格納されるトークンの数を取得します。 デフォルト値はInteger.MAX_VALUEです。- 戻り値:
- バッファされるトークンの数
 
- 
setPreservesUnknownTagspublic void setPreservesUnknownTags(boolean preservesTags)パーサーによる未知のタグの処理方法を判定します。 trueを設定すると未知のタグはモデルに入れられ、そうでない場合はモデルから外されます。- パラメータ:
- preservesTags- 未知のタグがモデルに保存される場合はtrue、そうでない場合、タグはモデルから外される
- 関連項目:
- HTML.Tag
 
- 
getPreservesUnknownTagspublic boolean getPreservesUnknownTags()未知のタグが見つかったときにパーサーの監視する動作を返します。- 戻り値:
- 解析時に未知のタグが残される場合はtrue
- 関連項目:
- HTML.Tag
 
- 
processHTMLFrameHyperlinkEventpublic void processHTMLFrameHyperlinkEvent(HTMLFrameHyperlinkEvent e)HTMLフレーム内でドキュメントによって生成されたHyperlinkEventsの処理をします。HyperlinkEventタイプは、パラメータが示すとおり、HTMLFrameHyperlinkEventです。HyperlinkEventに含まれる通常の情報のほかに、このイベントはクリックが発生したフレーム(発生元の要素)に対応する要素、およびターゲット名を格納しています。 ターゲット名は次に示す4種類の値のどれかです。- _self
- _parent
- _top
- 名前の付いたフレーム
 HTML.Attribute.SRC属性の値を変更するアクションが発生し、ChangedUpdateイベントをトリガーします。ターゲットが_parentの場合、<FRAMESET>要素である親要素を削除し、新しい<FRAME>要素を挿入したあと、 HTML.Attribute.SRC属性が送信先のURLと等しい値を持つように設定してRemovedUpdateおよびInsertUpdateをトリガーします。ターゲットが_topの場合、このメソッドは何も処理を行いません。 _topは、フレーム用のビューの実装(具体的には FrameView)で処理されます。 _topはドキュメント全体の置換えを意味するため、置換対象ドキュメントの外部で処理してください。ターゲットがフレーム名の場合、ターゲットと同じ名前の要素を要素階層から探し、その要素の HTML.Attribute.SRC属性を更新してChangedUpdateイベントをトリガーします。- パラメータ:
- e- イベント
 
- 
setParserpublic void setParser(HTMLEditorKit.Parser parser)既存のドキュメントにsetInnerHTMLやsetOuterHTMLなどのhtmlを挿入するときにメソッドが使用するパーサーを設定します。HTMLEditorKit.createDefaultDocumentはユーザーに代わってパーサーを設定します。 手動でHTMLDocumentドキュメントを作成する場合は、それぞれに対応したパーサーを設定するようにしてください。- パラメータ:
- parser- テキストの挿入に使われるパーサー
- 導入されたバージョン:
- 1.3
 
- 
getParserpublic HTMLEditorKit.Parser getParser()既存のドキュメントにhtmlを挿入するときに使用するパーサーを返します。- 戻り値:
- テキストの挿入に使われるパーサー
- 導入されたバージョン:
- 1.3
 
- 
setInnerHTMLpublic void setInnerHTML(Element elem, String htmlText) throws BadLocationException, IOException指定された要素の子をHTML文字列として指定されたコンテンツと置き換えます。2つ以上のイベントとして表示され、削除に続きnを挿入します。 次の構造を検討してください( elemパラメータは太字)。<body> | <div> / \ <p> <p>setInnerHTML(elem, "<ul><li>")を起動すると、(新しい要素は「青色」です)の構造が次のようになります。<body> | <div> \ <ul> \ <li>パラメータ elemを葉要素にしないでください。そうしないと、IllegalArgumentExceptionがスローされます。elemまたはhtmlTextパラメータがnullの場合、ドキュメントは変更されません。正しく機能させるために、ドキュメントは HTMLEditorKit.Parserを用意する必要があります。 これは、ドキュメントがHTMLEditorKitからcreateDefaultDocumentメソッドにより生成された場合です。- パラメータ:
- elem- 子が置き換えられる枝の要素
- htmlText- 解析され、- elemに割り当てられる文字列
- 例外:
- IllegalArgumentException-- elemが葉の場合
- IllegalStateException-- HTMLEditorKit.Parserが未定義の場合
- BadLocationException- 構造的な問題のため交換が不可能な場合
- IOException- 入出力例外が発生した場合
- 導入されたバージョン:
- 1.3
 
- 
setOuterHTMLpublic void setOuterHTML(Element elem, String htmlText) throws BadLocationException, IOException指定された親の要素をHTML文字列として指定されたコンテンツと置き換えます。2つ以上のイベントとして表示され、削除に続きnを挿入します。 葉を置きかえるときには、改行が必要な場合に改行があるかどうかを確認してください。 これによって追加要素が挿入されることがあります。 <img>を持つ改行が含まれている文字要素を置き換えるとした場合、これによって2つの要素(イメージ用に1つと改行用に1つ)が作成されることを考えてみてください。 要素を丸ごと置き換えようとすると、結果として2つの要素が生成される可能性がもっとも高くなります。たとえば、 setOuterHTML(getCharacterElement (getLength()), "blah")を呼び出すと、最終的に葉の要素が2つ生成され、一方は「blah」を表し、もう一方は終了要素を表します。次の構造を検討してください( elemパラメータは太字)。<body> | <div> / \ <p> <p>setOuterHTML(elem, "<ul><li>")を起動すると、(新しい要素は「青色」です)の構造が次のようになります。<body> | <ul> \ <li>elemまたはhtmlTextパラメータがnullの場合、ドキュメントは変更されません。正しく機能させるために、ドキュメントはHTMLEditorKit.Parserを用意する必要があります。 これは、ドキュメントがHTMLEditorKitから createDefaultDocumentメソッドにより生成された場合です。- パラメータ:
- elem- 置き換える要素
- htmlText- 解析されて、- elemの代わりに挿入される文字列
- 例外:
- IllegalStateException- HTMLEditorKit.Parserが設定されていない場合
- BadLocationException- 構造的な問題のため交換が不可能な場合
- IOException- 入出力例外が発生した場合
- 導入されたバージョン:
- 1.3
 
- 
insertAfterStartpublic void insertAfterStart(Element elem, String htmlText) throws BadLocationException, IOException要素の開始位置に文字列として指定されたHTMLを挿入します。次の構造を検討してください( elemパラメータは太字)。<body> | <div> / \ <p> <p>insertAfterStart(elem, "<ul><li>")を起動すると、(新しい要素は「青色」です)の構造が次のようになります。<body> | <div> / | \ <ul> <p> <p> / <li>insertBeforeStartメソッドと異なり、新規要素は指定された要素の兄弟ではなく、子になります。パラメータ elemを葉要素にしないでください。そうしないと、IllegalArgumentExceptionがスローされます。elemまたはhtmlTextパラメータがnullの場合、ドキュメントは変更されません。正しく機能させるために、ドキュメントは HTMLEditorKit.Parserを用意する必要があります。 これは、ドキュメントがHTMLEditorKitからcreateDefaultDocumentメソッドにより生成された場合です。- パラメータ:
- elem- 新しいテキストのルートである枝の要素
- htmlText- 解析され、- elemに割り当てられる文字列
- 例外:
- IllegalArgumentException-- elemが葉の場合
- IllegalStateException- ドキュメントにHTMLEditorKit.Parserが設定されていない場合
- BadLocationException- 構造上の問題のため挿入が不可能な場合
- IOException- 入出力例外が発生した場合
- 導入されたバージョン:
- 1.3
 
- 
insertBeforeEndpublic void insertBeforeEnd(Element elem, String htmlText) throws BadLocationException, IOException要素の終了位置に文字列として指定されたHTMLを挿入します。elemの子が葉で、elem.getEndOffset() - 1の文字が改行である場合、改行後にテキストがないようにするために改行前に挿入します。次の構造を検討してください( elemパラメータは太字)。<body> | <div> / \ <p> <p>insertBeforeEnd(elem, "<ul><li>")を起動すると、(新しい要素は「青色」です)の構造が次のようになります。<body> | <div> / | \ <p> <p> <ul> \ <li>insertAfterEndメソッドと異なり、新規要素は指定された要素の兄弟ではなく、子になります。パラメータ elemを葉要素にしないでください。そうしないと、IllegalArgumentExceptionがスローされます。elemまたはhtmlTextパラメータがnullの場合、ドキュメントは変更されません。正しく機能させるために、ドキュメントは HTMLEditorKit.Parserを用意する必要があります。 これは、ドキュメントがHTMLEditorKitからcreateDefaultDocumentメソッドにより生成された場合です。- パラメータ:
- elem- 新しいテキストのルートである要素
- htmlText- 解析され、- elemに割り当てられる文字列
- 例外:
- IllegalArgumentException-- elemが葉の場合
- IllegalStateException- ドキュメントにHTMLEditorKit.Parserが設定されていない場合
- BadLocationException- 構造上の問題のため挿入が不可能な場合
- IOException- 入出力例外が発生した場合
- 導入されたバージョン:
- 1.3
 
- 
insertBeforeStartpublic void insertBeforeStart(Element elem, String htmlText) throws BadLocationException, IOException指定された要素が開始される前に文字列として指定されたHTMLを挿入します。次の構造を検討してください( elemパラメータは太字)。<body> | <div> / \ <p> <p>insertBeforeStart(elem, "<ul><li>")を起動すると、(新しい要素は「青色」です)の構造が次のようになります。<body> / \ <ul> <div> / / \ <li> <p> <p>insertAfterStartメソッドと異なり、新規要素は指定された要素の子ではなく、兄弟になります。elemまたはhtmlTextパラメータがnullの場合、ドキュメントは変更されません。正しく機能させるために、ドキュメントは HTMLEditorKit.Parserを用意する必要があります。 これは、ドキュメントがHTMLEditorKitからcreateDefaultDocumentメソッドにより生成された場合です。- パラメータ:
- elem- コンテンツがその前に挿入される要素
- htmlText- 解析されて、- elemの前に挿入される文字列
- 例外:
- IllegalStateException- ドキュメントにHTMLEditorKit.Parserが設定されていない場合
- BadLocationException- 構造上の問題のため挿入が不可能な場合
- IOException- 入出力例外が発生した場合
- 導入されたバージョン:
- 1.3
 
- 
insertAfterEndpublic void insertAfterEnd(Element elem, String htmlText) throws BadLocationException, IOException指定された要素の最後の後に文字列として指定されたHTMLを挿入します。次の構造を検討してください( elemパラメータは太字)。<body> | <div> / \ <p> <p>insertAfterEnd(elem, "<ul><li>")を起動すると、(新しい要素は「青色」です)の構造が次のようになります。<body> / \ <div> <ul> / \ \ <p> <p> <li>insertBeforeEndメソッドと異なり、新規要素は指定された要素の子ではなく、兄弟になります。elemまたはhtmlTextパラメータがnullの場合、ドキュメントは変更されません。正しく機能させるために、ドキュメントは HTMLEditorKit.Parserを用意する必要があります。 これは、ドキュメントがHTMLEditorKitからcreateDefaultDocumentメソッドにより生成された場合です。- パラメータ:
- elem- コンテンツがそのあとに挿入される要素
- htmlText- 解析されて、- elemのあとに挿入される文字列
- 例外:
- IllegalStateException- ドキュメントにHTMLEditorKit.Parserが設定されていない場合
- BadLocationException- 構造上の問題のため挿入が不可能な場合
- IOException- 入出力例外が発生した場合
- 導入されたバージョン:
- 1.3
 
- 
getElement指定したidAttributeを持つ要素を返します。 要素が見つからない場合はnullが返されます。 このメソッドはAttributeに対して働き、文字タグに対しては働かないことに注意してください。 HTMLの簡単な例<a id="HelloThere">において、属性は「id」、文字タグは「a」です。 これはgetElement(RootElement, HTML.Attribute.id, id)の簡易メソッドです。 このメソッドはスレッドに対して安全ではありません。- パラメータ:
- id- 目的の- Attributeを表す文字列
- 戻り値:
- 指定されたAttributeを持つ要素。それが見つからない場合はnull。または、idがnullの場合はnull
- 導入されたバージョン:
- 1.3
- 関連項目:
- HTML.Attribute
 
- 
getElement属性(値valueを持つattribute)を格納するeの子要素を返します。見つからない場合はnullを返します。 このメソッドはスレッドに対して安全ではありません。- パラメータ:
- e- 検索を開始するルート要素
- attribute- 目的の- Attribute
- value- 指定された- Attributeの値
- 戻り値:
- 指定されたAttributeと指定されたvalueを持つ要素。それが見つからない場合はnull
- 導入されたバージョン:
- 1.3
- 関連項目:
- HTML.Attribute
 
- 
fireChangedUpdateprotected void fireChangedUpdate(DocumentEvent e)このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。 イベント・インスタンスは、fireメソッドに渡されるパラメータを使って簡単に生成されます。- オーバーライド:
- fireChangedUpdate、クラス:- AbstractDocument
- パラメータ:
- e- イベント
- 関連項目:
- EventListenerList
 
- 
fireUndoableEditUpdateprotected void fireUndoableEditUpdate(UndoableEditEvent e)このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。 イベント・インスタンスは、fireメソッドに渡されるパラメータを使って簡単に生成されます。- オーバーライド:
- fireUndoableEditUpdate、クラス:- AbstractDocument
- パラメータ:
- e- イベント
- 関連項目:
- EventListenerList
 
 
-