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.KeyBinding
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
修飾子と型 | フィールドと説明 |
---|---|
static String |
HONOR_DISPLAY_PROPERTIES
フォントまたはフォアグラウンド・カラーが書式付きテキストに指定されていない場合に、コンポーネントのデフォルトのフォントおよびフォアグラウンド・カラーを使用するかどうかを示すために使用する、クライアント・プロパティのキーです。
|
static String |
W3C_LENGTH_UNITS
HTMLのレンダリングで、w3c準拠の長さ単位が使用されるかどうかを示すために使用する、クライアント・プロパティのキーです。
|
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEY
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, 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, write
addAncestorListener, 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, update
add, 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, validateTree
action, 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, transferFocusUpCycle
public 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
- イベントEventListenerList
public 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
- ページのURLIOException
public void scrollToReference(String reference)
UL.getRef
メソッドによって返される値)までビューをスクロールします。デフォルトでは、このメソッドはHTMLDocument内での参照位置を認識しているだけです。実際のスクロール処理を実行するには、実装によりscrollRectToVisible
メソッドを呼び出します。HTML以外のドキュメント形式で参照位置へのスクロールが必要な場合は、このメソッドを再実装する必要があります。このメソッドは、コンポーネントが可視状態でない場合は無効です。reference
- スクロール先となる指定された位置public URL getPage()
null
を返し、相対URLは解決されません。null
public void setPage(String url) throws IOException
url
- 表示されているURLIOException
- null
または無効なURL指定の場合public String getUIClassID()
getUIClassID
、クラス: JComponent
JComponent.getUIClassID()
, UIDefaults.getUI(javax.swing.JComponent)
protected EditorKit createDefaultEditorKit()
PlainEditorKit
)を生成します。public EditorKit getEditorKit()
createDefaultEditorKit
が呼び出されます。public final String getContentType()
EditorKit
に関連した形式になるように定義されています。null
public 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
、クラス: JTextComponent
content
- 選択範囲を置き換えるコンテンツ。null
も指定できますpublic static EditorKit createEditorKitForContentType(String type)
ClassLoader
とともに登録されていた場合は、そのClassLoader
を使ってプロトタイプがロードされます。登録されているClassLoader
がなかった場合は、Class.forName
を使ってプロトタイプがロードされます。
プロトタイプEditorKit
のインスタンスが正しく検出されると、そのインスタンスが複製され、その複製が返されます。
type
- コンテンツ形式null
public 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
- 名前をロードするためのClassLoader
public static String getEditorKitClassNameForContentType(String type)
type
に現在登録されているEditorKit
クラス名を返します。type
- null
以外のコンテンツ・タイプpublic Dimension getPreferredSize()
JEditorPane
の推奨サイズを返します。JEditorPane
の推奨サイズは、スーパークラスの推奨サイズとわずかに異なります。ビューポートのサイズがコンポーネントの最小サイズより小さくなった場合は、幅または高さをトラックするためのscrollable定義がfalseに変わります。デフォルトのビューポート・レイアウトは推奨サイズを返しますが、このサイズはscrollableがトラッキングしている場合には適切ではありません。その場合、通常の推奨サイズが最小サイズに調整されます。これにより、HTML表などは最小サイズに縮小され、そのサイズで配置されます。最小サイズより小さくなることはありません。getPreferredSize
、クラス: JComponent
Dimension
JComponent.setPreferredSize(java.awt.Dimension)
, ComponentUI
public void setText(String t)
TextComponent
のテキストを、指定されたコンテンツに設定します。設定されるコンテンツはこのエディタのコンテンツ・タイプにする必要があります。たとえば、形式がtext/html
に設定されている場合、文字列はHTMLの形式で指定されます。
現在のドキュメントのコンテンツを削除し、現在のEditorKit
を使用して指定された文字列を解析してコンテンツを置き換えるように実装されます。これにより、コンポーネントに現在設定されているコンテンツ形式をサポートしながら、モデルを変更しないでスーパー・クラスのセマンティックスが指定されます。前のコンテンツが比較的小さく、副作用がないことが前提になります。この前提がどちらも守られない場合、予期しない結果を生じることがあります。これを避けるために、新しいドキュメントgetEditorKit().createDefaultDocument()
を生成して、既存のDocument
を新しいものに置き換えます。これで前のDocument
が中途半端な状態になることはありません。
文字列と一緒にコンポーネントをロードするもう1つの方法には、StringReaderを生成して読込みメソッドを呼び出すものがあります。この方法の場合、モデルは初期化が完了すると文字列のコンテンツに置き換えられます。
setText
、クラス: JTextComponent
t
- 設定する新しいテキスト。null
の場合は、古いテキストが削除されるgetText()
public String getText()
TextComponent
に格納されているテキストを、このエディタのコンテンツ・タイプで返します。テキストの取得時に例外がスローされた場合は、null
が返されます。このメソッドを実装すると、StringWriter
でJTextComponent.write
を呼び出すことができます。getText
、クラス: JTextComponent
setText(java.lang.String)
public boolean getScrollableTracksViewportWidth()
Scrollable
の幅を強制的にビュー・ポートの幅に一致させる場合にtrueを返します。getScrollableTracksViewportWidth
、インタフェース: Scrollable
getScrollableTracksViewportWidth
、クラス: JTextComponent
public boolean getScrollableTracksViewportHeight()
Scrollable
の高さを強制的にビュー・ポートの高さと一致させる場合にtrueを返します。getScrollableTracksViewportHeight
、インタフェース: Scrollable
getScrollableTracksViewportHeight
、クラス: JTextComponent
Scrollable
の高さをそれ自体の高さと強制的に一致させる場合はtrue、それ以外の場合はfalseprotected String paramString()
JEditorPane
の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null
にはなりません。paramString
、クラス: JTextComponent
JEditorPane
の文字列表現public AccessibleContext getAccessibleContext()
getAccessibleContext
、インタフェース: Accessible
getAccessibleContext
、クラス: JTextComponent
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.