public class JEditorPane extends JTextComponent
このコンポーネントは、EditorKitの実装を使用して動作します。指定されたコンテンツの種類に対応する適切な種類のテキスト・エディタとして動作します。ある時点でエディタに設定されるコンテンツ形式は、現在インストールされているEditorKitによって決まります。コンテンツが新しいURLに設定された場合、そのコンテンツ形式により、そのコンテンツをロードするのにどのEditorKitを使用する必要があるかが判定されます。
デフォルトでは、次のコンテンツ形式に対応しています。
DefaultEditorKitの拡張です。
javax.swing.text.html.HTMLEditorKitクラスです。
javax.swing.text.rtf.RTFEditorKitクラスです。
このコンポーネントには、次のような方法でコンテンツをロードできます。
setTextメソッドを使うと、文字列からコンポーネントを初期化できます。この場合、現在のEditorKitが使われ、コンテンツ・タイプはこの形式であることが要求されます。
readメソッドを使うと、Readerからコンポーネントを初期化できます。コンテンツ形式がHTMLの場合、<base>タグが使われていないか、またはHTMLDocumentでBaseプロパティが設定されていないと、イメージなどの相対参照を解決できません。この場合、現在のEditorKitが使われ、コンテンツ・タイプはこの形式であることが要求されます。
setPageメソッドを使うと、URLからコンポーネントを初期化できます。この場合、コンテンツ形式はURLから判断され、そのコンテンツ形式に登録されているEditorKitが設定されます。
コンテンツの種類によっては、ハイパーリンク・イベントを生成することによってハイパーリンクのサポートを提供できます。HTML EditorKitは、JEditorPaneが編集可能でない場合(JEditorPane.setEditable(false);が呼び出されている場合)にハイパーリンク・イベントを生成します。ドキュメントにHTMLフレームが埋め込まれている場合、通常の応答では現在のドキュメントの一部が変更されます。次のコード・フラグメントは、ハイパーリンク・リスナーの実装例です。この例では、HTMLフレーム・イベントは特別に扱われますが、他のすべてのアクティブなハイパーリンクは表示されるのみです。
class Hyperactive implements HyperlinkListener {
public void hyperlinkUpdate(HyperlinkEvent e) {
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
JEditorPane pane = (JEditorPane) e.getSource();
if (e instanceof HTMLFrameHyperlinkEvent) {
HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent)e;
HTMLDocument doc = (HTMLDocument)pane.getDocument();
doc.processHTMLFrameHyperlinkEvent(evt);
} else {
try {
pane.setPage(e.getURL());
} catch (Throwable t) {
t.printStackTrace();
}
}
}
}
}
text/htmlのレンダリング方法のカスタマイズについては、W3C_LENGTH_UNITSとHONOR_DISPLAY_PROPERTIESを参照してください。
ドキュメント内の文化依存情報は、文字エンコーディングと呼ばれるメカニズムによって扱われます。文字エンコーディングとは、文字セットの構成要素(文字、表意文字、数字、記号、制御文字)と特定の数値コードの明確なマッピングです。これは、ファイルの保存方法を表しています。文字エンコーディングには、ISO-8859-1、ISO-8859-5、Shift-jis、Euc-jp、UTF-8などがあります。ファイルは、ユーザー・エージェント(JEditorPane)に渡されるときに、ドキュメントの文字セット(ISO-10646、別名Unicode)に変換されます。
JEditorPaneで使われる文字セットを指定する方法は複数あります。
setContentTypeメソッドを呼び出す必要があります。コンテンツがsetPageメソッドによってロードされる場合、コンテンツ形式はURLの指定に従って設定されます。ファイルが直接ロードされる場合、コンテンツ形式はロードの前に設定される必要があります。
EditorKit読込みオペレーションによってスローされるChangedCharSetExceptionをキャッチする必要があります。読込み自体はChangedCharSetException (IOException)で指定された文字セットを使用する新しいリーダーでふたたび開始されます。
警告: Swingはスレッドに対して安全ではありません。詳細は、「Swing's Threading Policy」を参照してください。
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。1.4以降、すべてのJavaBeans(tm)用の長期間の格納サポートがjava.beansパッケージに追加されています。XMLEncoderを参照してください。
| 修飾子と型 | クラスと説明 |
|---|---|
protected class |
JEditorPane.AccessibleJEditorPane
このクラスは
JEditorPaneクラスのアクセシビリティ・サポートを実装しています。 |
protected class |
JEditorPane.AccessibleJEditorPaneHTML
このクラスは
AccessibleHypertextのサポートを提供し、このJEditorPaneにインストールされているEditorKitがHTMLEditorKitのインスタンスであるインスタンスで使用されます。 |
protected class |
JEditorPane.JEditorPaneAccessibleHypertextSupport
AccessibleJEditorPaneHTML.getAccessibleTextによって返されるものです。 |
JTextComponent.AccessibleJTextComponent, JTextComponent.DropLocation, JTextComponent.KeyBindingJComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| 修飾子と型 | フィールドと説明 |
|---|---|
static String |
HONOR_DISPLAY_PROPERTIES
フォントまたはフォアグラウンド・カラーが書式付きテキストに指定されていない場合に、コンポーネントのデフォルトのフォントおよびフォアグラウンド・カラーを使用するかどうかを示すために使用する、クライアント・プロパティのキーです。
|
static String |
W3C_LENGTH_UNITS
HTMLのレンダリングで、w3c準拠の長さ単位が使用されるかどうかを示すために使用する、クライアント・プロパティのキーです。
|
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEYlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| コンストラクタと説明 |
|---|
JEditorPane()
新しい
JEditorPaneを作成します。 |
JEditorPane(String url)
URL指定を示す文字列を基にして、
JEditorPaneを生成します。 |
JEditorPane(String type, String text)
指定されたテキストに初期化されている
JEditorPaneを生成します。 |
JEditorPane(URL initialPage)
入力のために指定されたURLを基にして、
JEditorPaneを生成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void |
addHyperlinkListener(HyperlinkListener listener)
変更の通知のためにハイパーリンク・リスナーを追加します。たとえば、リンクを選択したとき、リンクに入ったときなどがあります。
|
protected EditorKit |
createDefaultEditorKit()
コンポーネントがはじめて生成されるときに、デフォルトのエディタ・キット(
PlainEditorKit)を生成します。 |
static EditorKit |
createEditorKitForContentType(String type)
エディタ・キットのデフォルトのレジストリから、指定されたコンテンツ型のハンドラを生成します。
|
void |
fireHyperlinkUpdate(HyperlinkEvent e)
このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
|
AccessibleContext |
getAccessibleContext()
このJEditorPaneに関連付けられたAccessibleContextを取得します。
|
String |
getContentType()
このエディタが処理するように現在設定されているコンテンツ型を取得します。
|
EditorKit |
getEditorKit()
コンテンツの処理のために現在インストールされているキットを返します。
|
static String |
getEditorKitClassNameForContentType(String type)
型
typeに現在登録されているEditorKitクラス名を返します。 |
EditorKit |
getEditorKitForContentType(String type)
指定されたコンテンツ型で使用するエディタ・キットを取り出します。
|
HyperlinkListener[] |
getHyperlinkListeners()
addHyperlinkListener()を使用してこのJEditorPaneに追加された、すべての
HyperLinkListenerの配列を返します。 |
URL |
getPage()
表示されている現在のURLを返します。
|
Dimension |
getPreferredSize()
JEditorPaneの推奨サイズを返します。 |
boolean |
getScrollableTracksViewportHeight()
ビュー・ポートが常にこの
Scrollableの高さを強制的にビュー・ポートの高さと一致させる場合にtrueを返します。 |
boolean |
getScrollableTracksViewportWidth()
ビュー・ポートが常にこの
Scrollableの幅を強制的にビュー・ポートの幅に一致させる場合にtrueを返します。 |
protected InputStream |
getStream(URL page)
setPageメソッドによりロードされようとしている、指定されたURLのストリームを取得します。 |
String |
getText()
この
TextComponentに格納されているテキストを、このエディタのコンテンツ・タイプで返します。 |
String |
getUIClassID()
UIのクラスIDを返します。
|
protected String |
paramString()
この
JEditorPaneの文字列表現を返します。 |
void |
read(InputStream in, Object desc)
このメソッドは、ストリームから初期化を行います。
|
static void |
registerEditorKitForContentType(String type, String classname)
typeとclassnameのデフォルトのバインディングを作成します。 |
static void |
registerEditorKitForContentType(String type, String classname, ClassLoader loader)
typeとclassnameのデフォルトのバインディングを作成します。 |
void |
removeHyperlinkListener(HyperlinkListener listener)
ハイパーリンク・リスナーを削除します。
|
void |
replaceSelection(String content)
現在選択されているコンテンツを、渡された文字列が示す新しいコンテンツで置き換えます。
|
void |
scrollToReference(String reference)
指定された参照位置(表示されているURLに対する
UL.getRefメソッドによって返される値)までビューをスクロールします。 |
void |
setContentType(String type)
このエディタが処理するコンテンツ型を設定します。
|
void |
setEditorKit(EditorKit kit)
コンテンツを処理するために現在インストールされているキットを設定します。
|
void |
setEditorKitForContentType(String type, EditorKit k)
指定されたコンテンツ型で使用できるようにエディタ・キットを直接設定します。
|
void |
setPage(String url)
表示されている現在のURLを設定します。
|
void |
setPage(URL page)
表示されている現在のURLを設定します。
|
void |
setText(String t)
この
TextComponentのテキストを、指定されたコンテンツに設定します。設定されるコンテンツはこのエディタのコンテンツ・タイプにする必要があります。 |
addCaretListener, addInputMethodListener, addKeymap, copy, cut, fireCaretUpdate, getActions, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getDropLocation, getDropMode, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getPrintable, getScrollableBlockIncrement, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, moveCaretPosition, paste, print, print, print, processInputMethodEvent, read, removeCaretListener, removeKeymap, removeNotify, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDocument, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setUI, updateUI, viewToModel, writeaddAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCyclepublic static final String W3C_LENGTH_UNITS
デフォルトでは無効です。有効にするためには、この名前のクライアントpropertyをBoolean.TRUEに設定します。
public JEditorPane()
JEditorPaneを作成します。ドキュメント・モデルはnullに設定されます。public JEditorPane(URL initialPage) throws IOException
JEditorPaneを生成します。initialPage - URLIOException - URLがnullであるか、アクセスできない場合public JEditorPane(String url) throws IOException
JEditorPaneを生成します。url - URLIOException - URLがnullであるか、アクセスできない場合public JEditorPane(String type, String text)
JEditorPaneを生成します。これは、setContentTypeメソッドおよびsetTextメソッドを呼び出す簡易コンストラクタです。type - 指定されたテキストのMIME形式text - 初期化に使用するテキスト。nullも可NullPointerException - typeパラメータがnullの場合public void addHyperlinkListener(HyperlinkListener listener)
listener - リスナーpublic void removeHyperlinkListener(HyperlinkListener listener)
listener - リスナーpublic HyperlinkListener[] getHyperlinkListeners()
HyperLinkListenerの配列を返します。HyperLinkListener。リスナーが追加されていない場合は空の配列public void fireHyperlinkUpdate(HyperlinkEvent e)
EditorKitによって呼び出されます。リスナーのリストは、最後から先頭に向かって処理されます。e - イベントEventListenerListpublic void setPage(URL page) throws IOException
null以外の場合、新しいデフォルト・ドキュメントが生成され、URLがそのドキュメントに読み込まれます。URLに参照位置が含まれている場合は、scrollToReferenceメソッドを呼び出すと、その参照位置までスクロールされます。目的のURLが現在表示されている場合は、ドキュメントは再ロードされません。ドキュメントの再ロードを強制的に実行するには、ドキュメントのストリーム記述プロパティをクリアする必要があります。次のコードは、この方法を示しています。
Document doc = jEditorPane.getDocument(); doc.putProperty(Document.StreamDescriptionProperty, null);目的のURLが現在表示されていない場合、
getStreamメソッドが呼び出され、指定されたストリームに対する制御がサブクラスに渡されます。
このメソッドは、EditorKitによって返されるドキュメントに基づいて同期的または非同期的にロードを行います。DocumentがAbstractDocument型で、AbstractDocument.getAsynchronousLoadPriorityによって返されたゼロ以上の値を持つ場合、そのページはその優先順位により別々のスレッドでロードされます。
ドキュメントが同期的にロードされる場合、ドキュメントをプロパティ変更イベントに関連付け、トリガーするsetDocumentが呼び出され、エディタにインストールされる前にこのドキュメントにストリームが設定されます。IOExceptionがスローされる場合、部分的にロードされたドキュメントは破棄され、ドキュメント・プロパティ変更イベントもページ・プロパティ変更イベントもトリガーされません。ドキュメントが正常にロードおよびインストールされた場合、UIによってそのドキュメントのビューが生成され、必要な場合はさらにスクロールされて、ページ・プロパティ変更イベントがトリガーされます。
ドキュメントが非同期的にロードされる場合、ドキュメント・プロパティ変更イベントをトリガーするsetDocumentを呼び出してドキュメントがただちにエディタにインストールされ、次に実際のロードを開始するスレッドが生成されます。この場合、ページ・プロパティ変更イベントはこのメソッドの呼出しによって直接トリガーされることはなく、ロードを実行するスレッドが終了したときにトリガーされます。さらに、イベント・ディスパッチ・スレッドでもトリガーされます。呼出し側のスレッドは、もう一方のスレッドでエラーが発生した場合にIOExceptionをスローできないので、ロードが成功したかどうかに関係なく、ページ・プロパティ変更イベントはもう一方のスレッドが終了したときにトリガーされます。
page - ページのURLIOException - nullまたは無効なページが指定された場合、あるいは読込み中のストリームから例外が発生した場合getPage()public void read(InputStream in, Object desc) throws IOException
HTMLEditorKit型に設定されている場合、descパラメータがHTMLDocumentのときは、このメソッドはHTMLEditorKitを呼び出すことにより読込みを開始します。そうでない場合は、プレーン・テキストとしてモデルをロードするスーパークラス・メソッドを呼び出します。in - 読込み元のストリームdesc - ストリームを記述するオブジェクトIOException - 初期化に使用されるストリームによってスローされるJTextComponent.read(java.io.Reader, java.lang.Object), JTextComponent.setDocument(javax.swing.text.Document)protected InputStream getStream(URL page) throws IOException
setPageメソッドによりロードされようとしている、指定されたURLのストリームを取得します。デフォルトでは、このメソッドは単にURLをオープンし、ストリームを返します。このメソッドを実装し直すと、キャッシュからのストリームの取出し、ストリームの進捗状況の監視などの便利な機能を実行できます。
このメソッドは、コンテンツ形式を確立し、その結果ストリームのロードに使う適切なEditorKitを設定すると考えられます。
このストリームがhttp接続の場合、続いてリダイレクトが行われ、結果として得られるURLが、相対URLを適切に解決できるようにDocument.StreamDescriptionPropertyとして設定されます。
page - ページのURLIOExceptionpublic void scrollToReference(String reference)
UL.getRefメソッドによって返される値)までビューをスクロールします。デフォルトでは、このメソッドはHTMLDocument内での参照位置を認識しているだけです。実際のスクロール処理を実行するには、実装によりscrollRectToVisibleメソッドを呼び出します。HTML以外のドキュメント形式で参照位置へのスクロールが必要な場合は、このメソッドを再実装する必要があります。このメソッドは、コンポーネントが可視状態でない場合は無効です。reference - スクロール先となる指定された位置public URL getPage()
nullを返し、相対URLは解決されません。nullpublic void setPage(String url) throws IOException
url - 表示されているURLIOException - nullまたは無効なURL指定の場合public String getUIClassID()
getUIClassID 、クラス: JComponentJComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)protected EditorKit createDefaultEditorKit()
PlainEditorKit)を生成します。public EditorKit getEditorKit()
createDefaultEditorKitが呼び出されます。public final String getContentType()
EditorKitに関連した形式になるように定義されています。nullpublic final void setContentType(String type)
getEditorKitForContentTypeを呼び出し、エディタ・キットが正しく検出できたらsetEditorKitを呼び出します。このメソッドは、setEditorKitの直接呼出しの代わりに使用できる、簡易メソッドとほぼ同じです。
コンテンツ形式指定パラメータとして文字セットの定義が指定されている場合、関連付けられたEditorKitを使って入力ストリームをロードするときは、その文字セットが使われます。たとえば、形式がtext/html; charset=EUC-JPとして指定されている場合、コンテンツは、text/htmlに登録されているEditorKitを使ってロードされ、ドキュメントにUnicodeをロードするためにEditorKitに提供されるリーダーは、Unicodeへの変換のためにEUC-JP文字セットを使います。形式が識別できない場合は、コンテンツはプレーン・テキストtext/plainに登録されたEditorKitを使ってロードされます。
type - コンテンツを編集するためのMIMEタイプ。null以外を指定NullPointerException - typeパラメータがnullの場合getContentType()public void setEditorKit(EditorKit kit)
nullではない場合、新しいキットがインストールされ、デフォルト・ドキュメントが生成されます。setEditorKitが呼び出されると、常にPropertyChangeイベント(editorKit)がトリガーされます。
注: EditorKitは特定の形式のコンテンツをモデル化するソースであるため、モデルを変更するという副作用があります。このメソッドを使用すると、内部状態の整合性を保証するために、呼出し側に代わりsetDocumentが呼び出されます。
kit - 望ましいエディタ動作getEditorKit()public EditorKit getEditorKitForContentType(String type)
EditorKitがない場合は、デフォルトのEditorKitレジストリからEditorKitの生成を試みます。生成できなかった場合は、すべてのテキスト・ドキュメントをプレーン・テキストとして表示できるものと仮定し、PlainEditorKitが使用されます。
このメソッドは、他種のコンテンツ形式レジストリを使用するために再実装できます。このメソッドを再実装すれば、たとえばJava Activation Frameworkを使用できるようになります。
type - null以外のコンテンツ・タイプpublic void setEditorKitForContentType(String type, EditorKit k)
createEditorKitForContentTypeとともに使用して、Look & Feelを考慮したコンテンツ形式のハンドラをインストールすることがあります。type - null以外のコンテンツ・タイプk - 設定するエディタ・キットpublic void replaceSelection(String content)
nullの場合は、現在の選択領域の削除を行います。置換後のテキストには、入力用に現在定義されている属性が設定されます。コンポーネントが編集できない状態であれば、ビープ音を鳴らして終了します。replaceSelection 、クラス: JTextComponentcontent - 選択範囲を置き換えるコンテンツ。nullも指定できますpublic static EditorKit createEditorKitForContentType(String type)
ClassLoaderとともに登録されていた場合は、そのClassLoaderを使ってプロトタイプがロードされます。登録されているClassLoaderがなかった場合は、Class.forNameを使ってプロトタイプがロードされます。
プロトタイプEditorKitのインスタンスが正しく検出されると、そのインスタンスが複製され、その複製が返されます。
type - コンテンツ形式nullpublic static void registerEditorKitForContentType(String type, String classname)
typeとclassnameのデフォルトのバインディングを作成します。クラスは、あとで実際に必要になったときに動的にロードされ、実際の使用の前に安全に変更できるので、不必要なクラスのロードを避けることができます。プロトタイプEditorKitは、このメソッドで登録されたときに、Class.forNameでロードされます。type - null以外のコンテンツ・タイプclassname - あとでロードするクラスpublic static void registerEditorKitForContentType(String type, String classname, ClassLoader loader)
typeとclassnameのデフォルトのバインディングを作成します。クラスは、あとで実際に必要になったときに、指定されたClassLoaderを使って動的にロードされ、実際の使用の前に安全に変更できるため、不要なクラスのロードを避けることができます。type - null以外のコンテンツ・タイプclassname - あとでロードするクラスloader - 名前をロードするためのClassLoaderpublic static String getEditorKitClassNameForContentType(String type)
typeに現在登録されているEditorKitクラス名を返します。type - null以外のコンテンツ・タイプpublic Dimension getPreferredSize()
JEditorPaneの推奨サイズを返します。JEditorPaneの推奨サイズは、スーパークラスの推奨サイズとわずかに異なります。ビューポートのサイズがコンポーネントの最小サイズより小さくなった場合は、幅または高さをトラックするためのscrollable定義がfalseに変わります。デフォルトのビューポート・レイアウトは推奨サイズを返しますが、このサイズはscrollableがトラッキングしている場合には適切ではありません。その場合、通常の推奨サイズが最小サイズに調整されます。これにより、HTML表などは最小サイズに縮小され、そのサイズで配置されます。最小サイズより小さくなることはありません。getPreferredSize 、クラス: JComponentDimensionJComponent.setPreferredSize(java.awt.Dimension), ComponentUIpublic void setText(String t)
TextComponentのテキストを、指定されたコンテンツに設定します。設定されるコンテンツはこのエディタのコンテンツ・タイプにする必要があります。たとえば、形式がtext/htmlに設定されている場合、文字列はHTMLの形式で指定されます。
現在のドキュメントのコンテンツを削除し、現在のEditorKitを使用して指定された文字列を解析してコンテンツを置き換えるように実装されます。これにより、コンポーネントに現在設定されているコンテンツ形式をサポートしながら、モデルを変更しないでスーパー・クラスのセマンティックスが指定されます。前のコンテンツが比較的小さく、副作用がないことが前提になります。この前提がどちらも守られない場合、予期しない結果を生じることがあります。これを避けるために、新しいドキュメントgetEditorKit().createDefaultDocument()を生成して、既存のDocumentを新しいものに置き換えます。これで前のDocumentが中途半端な状態になることはありません。
文字列と一緒にコンポーネントをロードするもう1つの方法には、StringReaderを生成して読込みメソッドを呼び出すものがあります。この方法の場合、モデルは初期化が完了すると文字列のコンテンツに置き換えられます。
setText 、クラス: JTextComponentt - 設定する新しいテキスト。nullの場合は、古いテキストが削除されるgetText()public String getText()
TextComponentに格納されているテキストを、このエディタのコンテンツ・タイプで返します。テキストの取得時に例外がスローされた場合は、nullが返されます。このメソッドを実装すると、StringWriterでJTextComponent.writeを呼び出すことができます。getText 、クラス: JTextComponentsetText(java.lang.String)public boolean getScrollableTracksViewportWidth()
Scrollableの幅を強制的にビュー・ポートの幅に一致させる場合にtrueを返します。getScrollableTracksViewportWidth 、インタフェース: ScrollablegetScrollableTracksViewportWidth 、クラス: JTextComponentpublic boolean getScrollableTracksViewportHeight()
Scrollableの高さを強制的にビュー・ポートの高さと一致させる場合にtrueを返します。getScrollableTracksViewportHeight 、インタフェース: ScrollablegetScrollableTracksViewportHeight 、クラス: JTextComponentScrollableの高さをそれ自体の高さと強制的に一致させる場合はtrue、それ以外の場合はfalseprotected String paramString()
JEditorPaneの文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、nullにはなりません。paramString 、クラス: JTextComponentJEditorPaneの文字列表現public AccessibleContext getAccessibleContext()
getAccessibleContext 、インタフェース: AccessiblegetAccessibleContext 、クラス: JTextComponent バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.