JavaTM 2 Platform
Std. Ed. v1.3

javax.swing.text
クラス JTextComponent

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.text.JTextComponent
すべての実装インタフェース:
Accessible, ImageObserver, MenuContainer, Scrollable, Serializable
直系の既知のサブクラス:
JEditorPane, JTextArea, JTextField

public abstract class JTextComponent
extends JComponent
implements Scrollable, Accessible

Swing テキストコンポーネントの基底クラスです。java.awt.TextComponent クラスとある程度の互換性があります。また、他のサービスも提供されており、プラグイン可能な UI や Bean のサポート以外の柔軟性もあります。このクラスが提供する機能の使い方については、「The Java Tutorial」「General Rules for Using Text Components」を参照してください。

キャレット変更
キャレットは、Swing テキストコンポーネント内のプラグイン可能なオブジェクトです。キャレット位置と選択領域の変更通知は、テキストコンポーネントに登録済みの CaretListener インタフェースの実装に送られます。UI は、カスタマイズしたキャレットが設定済みでないかぎりデフォルトのキャレットをインストールします。

コマンド
テキストコンポーネントは、コンポーネントを操作するのに使うコマンドを提供します。これは本質的に、コンポーネントがその機能を表現する方法です。こうした機能は、TextAction の実装を使って、Swing アクションインタフェースに基づいて表現されます。テキストコンポーネントがサポートするコマンドのセットは、getActions() メソッドを使って見つけることができます。こうしたアクションは、ボタンなどから発生するキーイベントに割り当てられます。

テキスト入力
テキストコンポーネントは、キーマップとインプットメソッドのフレームワークを使用して柔軟で国際化されたテキスト入力をサポートしています。 また、AWT リスナーモデルとの互換性も備えています。

Keymap で、アプリケーションを使用してキーストロークをアクションにバインドすることができます。キーマップを複数のテキストコンポーネントで共有するために、TextAction を展開するアクションを使用することができます。TextAction は、どの JTextComponent がフォーカスを持っていて、アクションの対象 (アクションに送られた ActionEvent がターゲットテキストコンポーネントをソースとして含んでいない場合) であるかを判定できます。

インプットメソッドのフレームワーク で、テキストコンポーネントをインプットメソッドと結び付けることができます。このインプットメソッドは、キーのかなり少ないキーボードを使用して何千もの異なる文字をユーザが入力できるようにするイベントを前処理する個々のソフトウェアコンポーネントです。JTextComponent は、フレームワークのアクティブクライアントであるため、インプットメソッドとして適切なユーザインタフェースを実装します。結果的に、イベントにはテキストコンポーネントに到達しないものもあります。それらのイベントが、インプットメソッドにより処理され、テキスト入力がキーイベントではなく、InputMethodEvent の中の確定テキストとしてテキストコンポーネントに到達する場合があるためです。テキスト入力は、keyTyped キーイベントの文字とインプットメソッドイベントの確定テキストの組合わせです。

AWT リスナーモデルで、アプリケーションを使用してイベントをアクションにバインドするためにイベントリスナーをコンポーネントと結び付けることができます。Swing では、リスナーではなくキーマップを使用することを推奨していますが、イベントを消費することによりそのイベントを横取りする機会をリスナーに与えることによってリスナーとの互換性を維持しています。

キーボードイベントとインプットメソッドイベントは、次の工程で処理されます。
工程キーイベントInputMethodEvent
1. インプットメソッド(ここで生成される)
2. フォーカスマネージャ
3. 登録済みキーリスナー登録済みインプットメソッドリスナー
4. JTextComponent で処理するインプットメソッド
5. 現在のキーマップを使用して処理するキーマップ
6. JComponent で処理するキーボード (例: アクセラレータ、コンポーネントナビゲーションなど)

キーイベントには待機しているが、インプットメソッドイベントは認識しないアプリケーションとの互換性を保つため、工程 4 で処理するインプットメソッドは、インプットメソッドを処理しないコンポーネントのための互換性を提供しています。 これらのコンポーネントでは、確定テキストは keyTyped キーイベントに変換され、インプットメソッドのイベントパイプラインではなく、工程 3 で開始されるキーイベントパイプラインで処理されます。

コンポーネントはデフォルトで、すべての JextComponent のインスタンスによってデフォルトキーマップとして共有されるキーマップ (DEFAULT_KEYMAP) を作成します。一般的に、Look & Feel の実装は、デフォルトのキーマップに解決する別のキーマップをインストールして、デフォルトのキーマップを、別のキーマップにはないキー割り当てに対応させます。以下に、最小の割り当てを示します。

モデル/ビュー分割
テキストコンポーネントはモデル/ビュー分割を持ちます。テキストコンポーネントは、モデル、ビュー、コントローラを表すのに使うオブジェクトをまとめます。テキストドキュメントモデルは、モデルのオブザーバとして動作するほかのビューによって共有されます (たとえば、ドキュメントを複数のコンポーネントによって共有できる)。

モデルは Document インタフェースによって定義されます。これは、編集時に変更を追跡する柔軟なテキスト記憶機構を提供するためのもので、より高度なモデルに拡張できます。モデルインタフェースは、SGML が提供する式の機能、つまり多様なコンテンツを表現するのに使うシステムを取り込むためのものです。ドキュメントに加える各修正は、ビューを最新のモデルに同期できるようにする DocumentEvent という形式で変更の詳細の通知をすべてのオブザーバに送られます。このイベントは、DocumentListener インタフェースを実装して監視中のモデルに配信対象を登録したオブザーバに送られます。

位置情報
ビューでテキスト位置を指定する機能が提供されます。この情報を指定するために、modelToView(int)viewToModel(java.awt.Point) という 2 つのメソッドが用意されています。

元に戻す/再実行のサポート
編集履歴機構のサポートが提供されているので、元に戻す/再実行の操作を行うことができます。テキストコンポーネントはそれ自体ではデフォルトで履歴バッファを提供しませんが、履歴バッファと組み合わせて使って、元に戻す/再実行をサポートする UndoableEdit レコードを提供します。そのサポートは Document モデルによって提供されます。このモデルにより、UndoableEditListener の実装の追加が可能になります。

スレッドに対して安全
Swing テキストコンポーネントは特定のスレッドに対して安全な操作のサポートを提供します。テキストコンポーネントは高度な構成機能を持つので、提供される保護機能を使用しないこともできます。保護機能は主にモデルにより考え出されたものなので、AbstractDocument のマニュアルでは提供される保護の前提条件を説明しています。非同期で安全に呼び出せるメソッドには、コメントが付けられています。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
Document, DocumentEvent, DocumentListener, Caret, CaretEvent, CaretListener, TextUI, View, ViewFactory, 直列化された形式

内部クラスの概要
 class JTextComponent.AccessibleJTextComponent
          このクラスは JTextComponent クラス用のユーザ補助機能のサポートを実装しています。
static class JTextComponent.KeyBinding
          キー割り当てを作成するための割り当てレコードです。
 
クラス javax.swing.JComponent から継承した内部クラス
JComponent.AccessibleJComponent
 
クラス java.awt.Container から継承した内部クラス
Container.AccessibleAWTContainer
 
クラス java.awt.Component から継承した内部クラス
Component.AccessibleAWTComponent
 
フィールドの概要
static String DEFAULT_KEYMAP
          JTextComponent のインスタンスが異なるキーマップセットを持っていないかぎり、すべての JTextComponent のインスタンスで共有されるデフォルトキーマップの名前です。
static String FOCUS_ACCELERATOR_KEY
          フォーカスアクセラレータのバウンドプロパティ名です。
 
クラス javax.swing.JComponent から継承したフィールド
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
クラス java.awt.Component から継承したフィールド
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
インタフェース java.awt.image.ImageObserver から継承したフィールド
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
コンストラクタの概要
JTextComponent()
          新しい JTextComponent を作成します。
 
メソッドの概要
 void addCaretListener(CaretListener listener)
          変更を通知するためのキャレットリスナーをキャレットに追加します。
 void addInputMethodListener(InputMethodListener l)
          このコンポーネントからインプットメソッドイベントを受け取るために、指定されたインプットメソッドリスナーを追加します。
static Keymap addKeymap(String nm, Keymap parent)
          新しいキーマップをキーマップ階層に追加します。
 void copy()
          関連するテキストモデル内の現在選択されている領域をシステムクリップボードに転送して、テキストモデル内のコンテンツはそのまま残します。
 void cut()
          関連するテキストモデル内の現在選択されている領域をシステムクリップボードに転送して、モデルからコンテンツを削除します。
protected  void fireCaretUpdate(CaretEvent e)
          通知の配信対象を、指定されたイベントタイプで登録したすべてのリスナーに通知します。
 AccessibleContext getAccessibleContext()
          この JTextComponent に関連した AccessibleContext を返します。
 Action[] getActions()
          エディタのコマンドリストを取り出します。
 Caret getCaret()
          ビューでテキスト指向ナビゲーションを可能にするキャレットを取り出します。
 Color getCaretColor()
          キャレットを描画するのに使う現在の色を取り出します。
 int getCaretPosition()
          テキストコンポーネントのテキスト挿入キャレットの位置を返します。
 Color getDisabledTextColor()
          選択したテキストを描画するのに使う現在の色を取り出します。
 Document getDocument()
          エディタに関連したモデルを取り出します。
 char getFocusAccelerator()
          受信側テキストコンポーネントにフォーカスを取得させるキーアクセラレータを返します。
 Highlighter getHighlighter()
          ハイライトをつけるのに使用されるオブジェクトを取り出します。
 InputMethodRequests getInputMethodRequests()
          このコンポーネントのインプットメソッドからの要求をサポートするインプットメソッド要求ハンドラを返します。
 Keymap getKeymap()
          このテキストコンポーネントで現在アクティブなキーマップを取り出します。
static Keymap getKeymap(String nm)
          それまでにドキュメントに追加されていた名前付きキーマップを取り出します。
 Insets getMargin()
          テキストコンポーネントの境界とそのテキストの間のマージンを返します。
 Dimension getPreferredScrollableViewportSize()
          ビューコンポーネントのビューポートの適切なサイズを返します。
 int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
          論理行または論理列を表示するコンポーネントは、orientation の値によって、1 ブロック分の行または列を完全にエクスポーズするスクロール増分値を計算します。
 boolean getScrollableTracksViewportHeight()
          ビューポートでこの Scrollable の高さを常にビューポートの高さに合わせる場合に、true を返します。
 boolean getScrollableTracksViewportWidth()
          ビューポートが、常にこの Scrollable の幅を強制的にビューポートの幅に一致させようとする場合は、true を返します。
 int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
          論理行または論理列を表示するコンポーネントは、orientation の値によって、新しい 1 行または 1 列を完全にエクスポーズするスクロール増分値を計算します。
 String getSelectedText()
          この TextComponent に格納された選択されているテキストを返します。
 Color getSelectedTextColor()
          選択したテキストを描画するのに使う現在の色を取り出します。
 Color getSelectionColor()
          選択領域を描画するのに使う現在の色を取り出します。
 int getSelectionEnd()
          選択したテキストの末尾位置を返します。
 int getSelectionStart()
          選択したテキストの開始位置を返します。
 String getText()
          この TextComponent に格納されたテキストを返します。
 String getText(int offs, int len)
          コンポーネントが表すテキストの一部を取り出します。
 TextUI getUI()
          このテキスト指向エディタのユーザインタフェースファクトリを取り出します。
 boolean isEditable()
          この TextComponent が編集可能かどうかを示すブール型を返します。
 boolean isFocusTraversable()
          フォーカスの行き来ができる場合は true を返します。
static void loadKeymap(Keymap map, JTextComponent.KeyBinding[] bindings, Action[] actions)
           キーマップに多数の割り当てをロードします。
 Rectangle modelToView(int pos)
          モデル内の指定された位置を、ビュー座標体系内の場所に変換します。
 void moveCaretPosition(int pos)
          キャレットを新しい位置に移動して、そのあとに、setCaretPosition が前回に呼び出されたときに定義されたマークを残します。
protected  String paramString()
          この JTextComponent の文字列表現を返します。
 void paste()
          システムクリップボードのコンテンツを関連するテキストモデルに転送します。
protected  void processInputMethodEvent(InputMethodEvent e)
          このコンポーネントで発生するインプットメソッドイベントを、登録されているすべての InputMethodListener オブジェクトに送ることにより、インプットメソッドイベントを処理します。
 void read(Reader in, Object desc)
          ストリームから初期化します。
 void removeCaretListener(CaretListener listener)
          キャレットリスナーを削除します。
static Keymap removeKeymap(String nm)
          それまでにドキュメントに追加されていた名前付きキーマップを削除します。
 void removeNotify()
          このコンポーネントに、コンテナから削除されたことを通知します。
 void replaceSelection(String content)
          現在選択されているコンテンツを、渡された文字列が示す新しいコンテンツで置き換えます。
 void select(int selectionStart, int selectionEnd)
          指定された先頭と末尾の間のテキストを選択します。
 void selectAll()
          TextComponent 内のすべてのテキストを選択します。
 void setCaret(Caret c)
          使用するキャレットを設定します。
 void setCaretColor(Color c)
          キャレットを描画するのに使う現在の色を設定します。
 void setCaretPosition(int position)
          TextComponent のテキスト挿入キャレットの位置を設定します。
 void setDisabledTextColor(Color c)
          無効にしたテキストを描画するのに使う現在の色を設定します。
 void setDocument(Document doc)
          エディタをテキストドキュメントに関連付けます。
 void setEditable(boolean b)
          この TextComponent が編集可能かどうかを設定します。
 void setFocusAccelerator(char aKey)
          受信側テキストコンポーネントにフォーカスを取得させるキーアクセラレータを設定します。
 void setHighlighter(Highlighter h)
          使用するハイライタを設定します。
 void setKeymap(Keymap map)
          イベントをアクションに割り当てるのに使うキーマップを設定します。
 void setMargin(Insets m)
          テキストコンポーネントの境界とそのテキストの間のマージン空白を設定します。
 void setSelectedTextColor(Color c)
          選択したテキストを描画するのに使う現在の色を設定します。
 void setSelectionColor(Color c)
          選択領域を描画するのに使う現在の色を設定します。
 void setSelectionEnd(int selectionEnd)
          選択領域の末尾を、指定された位置に設定します。
 void setSelectionStart(int selectionStart)
          選択開始を、指定された位置に設定します。
 void setText(String t)
          この TextComponent に、指定されたテキストを設定します。
 void setUI(TextUI ui)
          このテキスト指向エディタのユーザインタフェースファクトリを設定します。
 void updateUI()
          プラグイン可能な UI を再ロードします。
 int viewToModel(Point pt)
          ビュー座標体系内の指定された場所を、モデル内の最も近い位置に変換します。
 void write(Writer out)
          モデルのコンテンツを、指定されたストリームに格納します。
 
クラス javax.swing.JComponent から継承したメソッド
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getUIClassID, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
クラス java.awt.Container から継承したメソッド
add, add, add, add, add, addContainerListener, addImpl, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getLayout, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setLayout, validate, validateTree
 
クラス java.awt.Component から継承したメソッド
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addKeyListener, addMouseListener, addMouseMotionListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getLocale, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, imageUpdate, inside, isDisplayable, isEnabled, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

FOCUS_ACCELERATOR_KEY

public static final String FOCUS_ACCELERATOR_KEY
フォーカスアクセラレータのバウンドプロパティ名です。

DEFAULT_KEYMAP

public static final String DEFAULT_KEYMAP
JTextComponent のインスタンスが異なるキーマップセットを持っていないかぎり、すべての JTextComponent のインスタンスで共有されるデフォルトキーマップの名前です。
コンストラクタの詳細

JTextComponent

public JTextComponent()
新しい JTextComponent を作成します。キャレットイベントのリスナーが確立され、プラグイン可能な UI がインストールされます。コンポーネントは編集可能とマークされます。配置はテキストのビューサブシステムによって管理されるので、レイアウトマネージャは使用されません。ドキュメントモデルは無効に設定されます。
メソッドの詳細

getUI

public TextUI getUI()
このテキスト指向エディタのユーザインタフェースファクトリを取り出します。
戻り値:
ファクトリ

setUI

public void setUI(TextUI ui)
このテキスト指向エディタのユーザインタフェースファクトリを設定します。
パラメータ:
ui - ファクトリ

updateUI

public void updateUI()
プラグイン可能な UI を再ロードします。新しいインタフェースを取得するのに使うキーは getUIClassID() です。UI のタイプは TextUI です。invalidate() は、UI の設定後に呼び出されます。
オーバーライド:
クラス JComponent 内の updateUI
クラス javax.swing.JComponent からコピーされたタグ:
関連項目:
JComponent.setUI(javax.swing.plaf.ComponentUI), UIManager.getLookAndFeel(), UIManager.getUI(javax.swing.JComponent)

addCaretListener

public void addCaretListener(CaretListener listener)
変更を通知するためのキャレットリスナーをキャレットに追加します。
パラメータ:
listener - リスナー
関連項目:
CaretEvent

removeCaretListener

public void removeCaretListener(CaretListener listener)
キャレットリスナーを削除します。
パラメータ:
listener - リスナー
関連項目:
CaretEvent

fireCaretUpdate

protected void fireCaretUpdate(CaretEvent e)
通知の配信対象を、指定されたイベントタイプで登録したすべてのリスナーに通知します。イベントインスタンスは、fire メソッドに渡されるパラメータを使って簡単に生成されます。リスナーリストは降順方式で処理されます。
パラメータ:
e - イベント
関連項目:
EventListenerList

setDocument

public void setDocument(Document doc)
エディタをテキストドキュメントに関連付けます。現在登録済みのファクトリを使うと、ドキュメントのビューを構築できます。このビューは、再検証後にエディタによって表示されます。PropertyChange イベント (document) は、各リスナーに通知されます。
パラメータ:
doc - 表示および編集するドキュメント
関連項目:
getDocument()

getDocument

public Document getDocument()
エディタに関連したモデルを取り出します。これは主に、テキストエディタになるのに必要な最小限の状態に UI が到達するためのものです。サブクラスは、モデルの実際の型を返します。この型は通常 Document を継承したものになります。
戻り値:
モデル

getActions

public Action[] getActions()
エディタのコマンドリストを取り出します。これは、エディタ自身がサポートするコマンドコレクションで拡張された、プラグイン済み UI によってサポートされるコマンドのリストです。これらは、キーマップ内と同じように、イベントへの割り当てに役立ちます。
戻り値:
コマンドリスト

setMargin

public void setMargin(Insets m)
テキストコンポーネントの境界とそのテキストの間のマージン空白を設定します。テキストコンポーネントのデフォルト Border オブジェクトは、この値を使って適切なマージンを作成します。ただし、デフォルト以外の境界が設定されている場合は、Border オブジェクトが適切なマージン空白を作成します (それ以外の場合、このプロパティは事実上無視される)。このため、コンポーネントの再描画が行われます。PropertyChange イベント (margin) はすべてのリスナーに送られます。
パラメータ:
m - ボーダとテキストの間のマージン

getMargin

public Insets getMargin()
テキストコンポーネントの境界とそのテキストの間のマージンを返します。
戻り値:
マージン

getCaret

public Caret getCaret()
ビューでテキスト指向ナビゲーションを可能にするキャレットを取り出します。
戻り値:
キャレット

setCaret

public void setCaret(Caret c)
使用するキャレットを設定します。デフォルトで、インストールされる UI によって設定されます。これは、必要に応じてカスタムキャレットに変更できます。キャレットを設定すると、PropertyChange イベント (caret) が発生します。
パラメータ:
c - キャレット
関連項目:
getCaret()

getHighlighter

public Highlighter getHighlighter()
ハイライトをつけるのに使用されるオブジェクトを取り出します。
戻り値:
ハイライタ

setHighlighter

public void setHighlighter(Highlighter h)
使用するハイライタを設定します。デフォルトで、インストールされる UI によって設定されます。これは、必要に応じてカスタムハイライタに変更できます。これを無効にするには、ハイライタを null に設定します。新しいハイライタがインストールされると、PropertyChange イベント (highlighter) が発生します。
パラメータ:
h - ハイライタ
関連項目:
getHighlighter()

setKeymap

public void setKeymap(Keymap map)
イベントをアクションに割り当てるのに使うキーマップを設定します。null に設定すると、キーボード入力が事実上無効になります。新しいキーマップをインストールすると、PropertyChange イベント (keymap) が発生します。
パラメータ:
map - キーマップ
関連項目:
getKeymap()

getKeymap

public Keymap getKeymap()
このテキストコンポーネントで現在アクティブなキーマップを取り出します。
戻り値:
キーマップ

addKeymap

public static Keymap addKeymap(String nm,
                               Keymap parent)
新しいキーマップをキーマップ階層に追加します。キーマップ割り当ては下から上へ解釈処理されるので、子で指定した属性は親で指定した属性をオーバーライドします。
パラメータ:
nm - キーマップ名 (ドキュメント内の名前付きキーマップのコレクションで一意でなければならない)。キーマップに名前を指定しない場合は、名前は null でもかまわない。ただし、名前なしキーマップは名前で取得できないので、返された参照の管理は呼び出し側で行う
parent - 親キーマップ。未指定の割り当てをほかの特定のキーマップで解釈処理する必要がない場合は、null でもかまわない
戻り値:
キーマップ

removeKeymap

public static Keymap removeKeymap(String nm)
それまでにドキュメントに追加されていた名前付きキーマップを削除します。名前が null であるキーマップは、この方法では削除できません。
パラメータ:
nm - 削除するキーマップの名前
戻り値:
削除されたキーマップ

getKeymap

public static Keymap getKeymap(String nm)
それまでにドキュメントに追加されていた名前付きキーマップを取り出します。名前が null であるキーマップは扱いません。
パラメータ:
nm - キーマップの名前
戻り値:
キーマップ

loadKeymap

public static void loadKeymap(Keymap map,
                              JTextComponent.KeyBinding[] bindings,
                              Action[] actions)

キーマップに多数の割り当てをロードします。このメソッドを使うと、定義のスタティックテーブルを取得して特定のキーマップにロードできます。次に、いくつかのキーを JtextComponent に関連したカット、コピー、ペーストの各アクションに割り当てる例を示します。



   static final JTextComponent.KeyBinding[] defaultBindings = {
     new JTextComponent.KeyBinding(
       KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK),
       DefaultEditorKit.copyAction),
     new JTextComponent.KeyBinding(
       KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK),
       DefaultEditorKit.pasteAction),
     new JTextComponent.KeyBinding(
       KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_MASK),
       DefaultEditorKit.cutAction),
   };

   JTextComponent c = new JTextPane();
   Keymap k = c.getKeymap();
   JTextComponent.loadKeymap(k, defaultBindings, c.getActions());
 
割り当てとアクションのセットは空でもかまいませんが、null にはできません。
パラメータ:
map - キーマップ
bindings - バインディング
actions - アクションのセット

getCaretColor

public Color getCaretColor()
キャレットを描画するのに使う現在の色を取り出します。
戻り値:

setCaretColor

public void setCaretColor(Color c)
キャレットを描画するのに使う現在の色を設定します。これを無効に設定すると、効果的にデフォルトの色を復元します。色を設定すると、PropertyChange イベント (caretColor) が発生します。
パラメータ:
c - 色
関連項目:
getCaretColor()

getSelectionColor

public Color getSelectionColor()
選択領域を描画するのに使う現在の色を取り出します。
戻り値:

setSelectionColor

public void setSelectionColor(Color c)
選択領域を描画するのに使う現在の色を設定します。色に null を設定することは、Color.white を設定することと同じです。色を設定すると、PropertyChange イベント (selectionColor) が発生します。
パラメータ:
c - 色
関連項目:
getSelectionColor()

getSelectedTextColor

public Color getSelectedTextColor()
選択したテキストを描画するのに使う現在の色を取り出します。
戻り値:

setSelectedTextColor

public void setSelectedTextColor(Color c)
選択したテキストを描画するのに使う現在の色を設定します。色に null を設定することは、Color.black を設定することと同じです。色を設定すると、PropertyChange イベント (selectedTextColor) が発生します。
パラメータ:
c - 色
関連項目:
getSelectedTextColor()

getDisabledTextColor

public Color getDisabledTextColor()
選択したテキストを描画するのに使う現在の色を取り出します。
戻り値:

setDisabledTextColor

public void setDisabledTextColor(Color c)
無効にしたテキストを描画するのに使う現在の色を設定します。色を設定すると、PropertyChange イベント (disabledTextColor) が発生します。
パラメータ:
c - 色
関連項目:
getDisabledTextColor()

replaceSelection

public void replaceSelection(String content)
現在選択されているコンテンツを、渡された文字列が示す新しいコンテンツで置き換えます。選択領域がない場合は、指定されたテキストの挿入と同等です。 置換後のテキストがない場合、現在の選択領域の削除と同等です。

このメソッドは、キーマップアクションに割り当てられるコンテンツを挿入するアクションのデフォルト実装によって使用されます。

このメソッドはスレッドに対して安全ですが、ほとんどの Swing メソッドは違います。詳細は、「Threads and Swing」を参照してください。

パラメータ:
content - 選択範囲を置き換えるコンテンツ

getText

public String getText(int offs,
                      int len)
               throws BadLocationException
コンポーネントが表すテキストの一部を取り出します。長さが 0 の場合は、空の文字列を返します。
パラメータ:
offs - オフセット >= 0
len - 長さ >= 0
戻り値:
テキスト
例外:
BadLocationException - オフセットまたは長さが無効な場合

modelToView

public Rectangle modelToView(int pos)
                      throws BadLocationException
モデル内の指定された位置を、ビュー座標体系内の場所に変換します。この変換を計算するために、コンポーネントは正のサイズを持つ必要があります。つまり、コンポーネントのサイズが決定されるまでレイアウトの計算はできません。コンポーネントは可視である必要もペイントされている必要もありません。
パラメータ:
pos - 位置 >= 0
戻り値:
矩形の座標。座標体系での位置を (r.x, r.y) で表現。コンポーネントがまだ正のサイズを持っていない場合は null
例外:
BadLocationException - 指定された位置が、関連するドキュメント内の有効な位置を表さない場合
関連項目:
TextUI.modelToView(javax.swing.text.JTextComponent, int)

viewToModel

public int viewToModel(Point pt)
ビュー座標体系内の指定された場所を、モデル内の最も近い位置に変換します。この変換を計算するために、コンポーネントは正のサイズを持つ必要があります。つまり、コンポーネントのサイズが決定されるまでレイアウトの計算はできません。コンポーネントは可視である必要もペイントされている必要もありません。
パラメータ:
pt - 変換するビュー内の位置
戻り値:
ドキュメントの先頭からのオフセット >= 0。コンポーネントがまだ正のサイズを持っていない場合は -1
関連項目:
TextUI.viewToModel(javax.swing.text.JTextComponent, java.awt.Point)

cut

public void cut()
関連するテキストモデル内の現在選択されている領域をシステムクリップボードに転送して、モデルからコンテンツを削除します。現在の選択領域は取り消されます。選択領域が無効な場合には何も行いません。

copy

public void copy()
関連するテキストモデル内の現在選択されている領域をシステムクリップボードに転送して、テキストモデル内のコンテンツはそのまま残します。現在の選択領域は元のまま残ります。選択領域が無効な場合には何も行いません。

paste

public void paste()
システムクリップボードのコンテンツを関連するテキストモデルに転送します。関連するビュー内に選択領域があるときは、クリップボードのコンテンツで置き換えられます。選択領域がないときは、クリップボードのコンテンツは関連するビュー内の現在の挿入位置の前に挿入されます。クリップボードが空の場合には何も行いません。
関連項目:
replaceSelection(java.lang.String)

moveCaretPosition

public void moveCaretPosition(int pos)
キャレットを新しい位置に移動して、そのあとに、setCaretPosition が前回に呼び出されたときに定義されたマークを残します。このメソッドは、選択領域を形成します。
パラメータ:
pos - 位置
関連項目:
setCaretPosition(int)

setFocusAccelerator

public void setFocusAccelerator(char aKey)
受信側テキストコンポーネントにフォーカスを取得させるキーアクセラレータを設定します。アクセラレータは、alt キーと指定された文字キーの組み合わせになります (大文字に変換される)。デフォルトでは、フォーカスアクセラレータキーはありません。それまでのキーアクセラレータ設定はすべて破棄されます。「\0」キー設定が登録され、フォーカスアクセラレータをオフに設定する効果を持ちます。新しいキーを設定すると、PropertyChange イベント (FOCUS_ACCELERATOR_KEY) が発生します。
パラメータ:
aKey - キー
関連項目:
getFocusAccelerator()

getFocusAccelerator

public char getFocusAccelerator()
受信側テキストコンポーネントにフォーカスを取得させるキーアクセラレータを返します。設定済みのフォーカスアクセラレータがない場合は、「\0」を返します。
戻り値:
キー

read

public void read(Reader in,
                 Object desc)
          throws IOException
ストリームから初期化します。コンポーネントに適切なタイプのモデルを作成して、モデルをストリームから初期化します。デフォルトで、モデルをプレーンテキストでロードします。モデルのそれまでのコンテンツは破棄されます。
パラメータ:
in - 読み込み元のストリーム
desc - ストリームを記述するオブジェクト。String、File、URL など。ある種のドキュメント (たとえば HTML) は、この情報を利用できる場合がある。null 以外の場合、ドキュメントのプロパティとして追加される
例外:
IOException - 初期化に使われるストリームによってスローされる
関連項目:
EditorKit.createDefaultDocument(), setDocument(javax.swing.text.Document), PlainDocument

write

public void write(Writer out)
           throws IOException
モデルのコンテンツを、指定されたストリームに格納します。デフォルトで、モデルをプレーンテキストで格納します。
パラメータ:
out - 出力ストリーム
例外:
IOException - 入出力エラーが発生した場合

removeNotify

public void removeNotify()
このコンポーネントに、コンテナから削除されたことを通知します。このメソッドは、このコンポーネントへの、最後にフォーカスがあったコンポーネントとしての参照が存在する場合 (TextAction をサポートする場合) に、その参照を削除するために使われます。
オーバーライド:
クラス JComponent 内の removeNotify
クラス javax.swing.JComponent からコピーされたタグ:
関連項目:
JComponent.registerKeyboardAction(java.awt.event.ActionListener, java.lang.String, javax.swing.KeyStroke, int)

isFocusTraversable

public boolean isFocusTraversable()
フォーカスの行き来ができる場合は true を返します。使用不可のボタンのようなコンポーネントでは false になります。
オーバーライド:
クラス JComponent 内の isFocusTraversable
戻り値:
フォーカスの行き来が可能な場合は true

setCaretPosition

public void setCaretPosition(int position)
TextComponent のテキスト挿入キャレットの位置を設定します。キャレットは変更を追跡するので、コンポーネントの基本となるテキストが変更されるとこれも移動することに注意してください。ドキュメントが無効な場合には何も行いません。
パラメータ:
position - 位置

getCaretPosition

public int getCaretPosition()
テキストコンポーネントのテキスト挿入キャレットの位置を返します。
戻り値:
テキストコンポーネントのテキスト挿入キャレットの位置 >= 0

setText

public void setText(String t)
この TextComponent に、指定されたテキストを設定します。テキストが無効か空の場合、古いテキストを単純に削除する効果を持ちます。

このメソッドはスレッドに対して安全ですが、ほとんどの Swing メソッドは違います。詳細は、「Threads and Swing」を参照してください。

パラメータ:
t - 設定する新しいテキスト
関連項目:
getText(int, int)

getText

public String getText()
この TextComponent に格納されたテキストを返します。基本となるドキュメントが null の場合は、NullPointerException を返します。
戻り値:
テキスト
関連項目:
setText(java.lang.String)

getSelectedText

public String getSelectedText()
この TextComponent に格納された選択されているテキストを返します。選択領域が無効であるか、ドキュメントが空の場合は、null を返します。
戻り値:
テキスト
例外:
IllegalArgumentException - 選択領域がなんらかの理由でドキュメントへの有効なマッピングを持たない場合
関連項目:
setText(java.lang.String)

isEditable

public boolean isEditable()
この TextComponent が編集可能かどうかを示すブール型を返します。
戻り値:
boolean 型の値
関連項目:
setEditable(boolean)

setEditable

public void setEditable(boolean b)
この TextComponent が編集可能かどうかを設定します。状態が変更されると、PropertyChange イベント (editable) が発生します。
パラメータ:
b - 設定される boolean
関連項目:
isEditable()

getSelectionStart

public int getSelectionStart()
選択したテキストの開始位置を返します。ドキュメントが空の場合は 0、選択領域がない場合はドットの値を返します。
戻り値:
開始位置 >= 0

setSelectionStart

public void setSelectionStart(int selectionStart)
選択開始を、指定された位置に設定します。新しい先頭は、現在の選択領域の末尾かその前に限定されます。

これは、このメソッドを java.awt.TextComponent で呼び出したコードに対する下位互換に役立ちます。これを実装すると、実際の選択領域が管理されている場所である Caret の実装に転送できます。

パラメータ:
selectionStart - テキストの開始位置 >= 0

getSelectionEnd

public int getSelectionEnd()
選択したテキストの末尾位置を返します。ドキュメントが空の場合は 0、選択領域がない場合はドットの値を返します。
戻り値:
末尾位置 >= 0

setSelectionEnd

public void setSelectionEnd(int selectionEnd)
選択領域の末尾を、指定された位置に設定します。新しい末尾は、現在の選択領域の先頭またはその後に限定されます。

これは、このメソッドを java.awt.TextComponent で呼び出したコードに対する下位互換に役立ちます。これを実装すると、実際の選択領域が管理されている場所である Caret の実装に転送できます。

パラメータ:
selectionEnd - テキストの末尾位置 >= 0

select

public void select(int selectionStart,
                   int selectionEnd)
指定された先頭と末尾の間のテキストを選択します。この呼び出しは、下位互換のために提供されています。これは、setCaretPosition への呼び出しに回され、それに moveCaretPostion が続きます。選択領域を管理する望ましい方法は、これらのメソッドを直接呼び出すことです。
パラメータ:
selectionStart - テキストの開始位置 >= 0
selectionEnd - テキストの末尾位置 >= 0
関連項目:
setCaretPosition(int), moveCaretPosition(int)

selectAll

public void selectAll()
TextComponent 内のすべてのテキストを選択します。無効または空のドキュメントでは何も行いません。

getPreferredScrollableViewportSize

public Dimension getPreferredScrollableViewportSize()
ビューコンポーネントのビューポートの適切なサイズを返します。これを実装すると、コンポーネントの適切なサイズを返すデフォルト動作を実行できます。
定義:
インタフェース Scrollable 内の getPreferredScrollableViewportSize
戻り値:
ビューがこの Scrollable である JViewport の preferredSize

getScrollableUnitIncrement

public int getScrollableUnitIncrement(Rectangle visibleRect,
                                      int orientation,
                                      int direction)
論理行または論理列を表示するコンポーネントは、orientation の値によって、新しい 1 行または 1 列を完全にエクスポーズするスクロール増分値を計算します。理論的には、コンポーネントは項目を完全にエクスポーズするために必要な距離を返すことで、部分的にエクスポーズされている行または列を処理します。

このデフォルト実装は、単純に可視領域の 10% を返します。サブクラスは、よりいっそう適正な値を提供できます。

定義:
インタフェース Scrollable 内の getScrollableUnitIncrement
パラメータ:
visibleRect - ビューポート内の可視のビュー領域
orientation - SwingConstants.VERTICAL または SwingConstants.HORIZONTAL
direction - 上または左にスクロールする場合は 0 より小さく、下または右にスクロールする場合は 0 より大きい
戻り値:
指定された方向にスクロールするための「ユニット」増分値
例外:
IllegalArgumentException - 方向が無効な場合
関連項目:
JScrollBar.setUnitIncrement(int)

getScrollableBlockIncrement

public int getScrollableBlockIncrement(Rectangle visibleRect,
                                       int orientation,
                                       int direction)
論理行または論理列を表示するコンポーネントは、orientation の値によって、1 ブロック分の行または列を完全にエクスポーズするスクロール増分値を計算します。

このデフォルト実装は、単純に可視領域を返します。サブクラスは、よりいっそう適正な値を提供できます。

定義:
インタフェース Scrollable 内の getScrollableBlockIncrement
パラメータ:
visibleRect - ビューポート内の可視のビュー領域
orientation - SwingConstants.VERTICAL または SwingConstants.HORIZONTAL
direction - 上または左にスクロールする場合は 0 より小さく、下または右にスクロールする場合は 0 より大きい
戻り値:
指定された方向にスクロールするための「ブロック」増分値
例外:
IllegalArgumentException - 方向が無効な場合
関連項目:
JScrollBar.setBlockIncrement(int)

getScrollableTracksViewportWidth

public boolean getScrollableTracksViewportWidth()
ビューポートが、常にこの Scrollable の幅を強制的にビューポートの幅に一致させようとする場合は、true を返します。たとえば、折り返し行がビューポートの右端を越えて消えてしまうようでは不都合なので、行折り返しをサポートした通常のテキストビューはここで true を返します。上位クラスに JScrollPane を持つ Scrollable に true を返すと、水平スクロールが事実上無効になることに注意してください。

JViewport などのスクロールコンテナは、検証されるとこのメソッドを使用します。

定義:
インタフェース Scrollable 内の getScrollableTracksViewportWidth
戻り値:
ビューポートが Scrollable の幅を強制的にそれ自体に一致させる場合は true

getScrollableTracksViewportHeight

public boolean getScrollableTracksViewportHeight()
ビューポートでこの Scrollable の高さを常にビューポートの高さに合わせる場合に、true を返します。たとえば、左から右の列へテキストを表示する段組みのテキストビューの場合、このメソッドで true を返すと、垂直方向のスクロールが結果的に無効になります。

JViewport などのスクロールコンテナは、検証されるとこのメソッドを使用します。

定義:
インタフェース Scrollable 内の getScrollableTracksViewportHeight
戻り値:
ビューポートが Scrollable の高さを強制的にそれ自体に一致させる場合は true

getAccessibleContext

public AccessibleContext getAccessibleContext()
この JTextComponent に関連した AccessibleContext を返します。テキストコンポーネントの場合、AccessibleContext は AccessibleJTextComponent の形式を取ります。必要に応じて新規の AccessibleJTextComponent インスタンスが作成されます。
定義:
インタフェース Accessible 内の getAccessibleContext
オーバーライド:
クラス JComponent 内の getAccessibleContext
戻り値:
この JTextComponent の AccessibleContext として機能する AccessibleJTextComponent

paramString

protected String paramString()
この JTextComponent の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null にはなりません。

JFC コンポーネントの新しい側面についての情報を返すには、paramString() をオーバーライドします。

オーバーライド:
クラス JComponent 内の paramString
戻り値:
この JTextComponent の文字列表現

processInputMethodEvent

protected void processInputMethodEvent(InputMethodEvent e)
クラス Component の記述:
このコンポーネントで発生するインプットメソッドイベントを、登録されているすべての InputMethodListener オブジェクトに送ることにより、インプットメソッドイベントを処理します。

このコンポーネントに対してインプットメソッドイベントが使用可能でない場合、このメソッドは呼び出されません。インプットメソッドイベントは、次のどれかの場合に使用可能になります。

オーバーライド:
クラス Component 内の processInputMethodEvent
クラス java.awt.Component からコピーされたタグ:
パラメータ:
e - インプットメソッドイベント
関連項目:
InputMethodEvent, InputMethodListener, Component.addInputMethodListener(java.awt.event.InputMethodListener), Component.enableEvents(long)

getInputMethodRequests

public InputMethodRequests getInputMethodRequests()
クラス Component の記述:
このコンポーネントのインプットメソッドからの要求をサポートするインプットメソッド要求ハンドラを返します。オンザスポットテキスト入力をサポートするコンポーネントは、InputMethodRequests のインスタンスを返すためにはこのメソッドをオーバーライドする必要があります。同時に、インプットメソッドイベントを処理する必要もあります。
オーバーライド:
クラス Component 内の getInputMethodRequests
クラス java.awt.Component からコピーされたタグ:
戻り値:
このコンポーネントのインプットメソッド要求ハンドラ。デフォルトでは null
関連項目:
Component.addInputMethodListener(java.awt.event.InputMethodListener)

addInputMethodListener

public void addInputMethodListener(InputMethodListener l)
クラス Component の記述:
このコンポーネントからインプットメソッドイベントを受け取るために、指定されたインプットメソッドリスナーを追加します。InputMethodRequests のインスタンスを返すように getInputMethodRequests もオーバーライドする場合、コンポーネントはインプットメソッドからインプットメソッドイベントを受け取るだけです。l が null の場合、例外はスローされず、処理も実行されません。
オーバーライド:
クラス Component 内の addInputMethodListener
クラス java.awt.Component からコピーされたタグ:
パラメータ:
l - インプットメソッドリスナー
関連項目:
InputMethodEvent, InputMethodListener, Component.removeInputMethodListener(java.awt.event.InputMethodListener), Component.getInputMethodRequests()

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.