モジュール java.desktop
パッケージ javax.swing.text

クラスJTextComponent

  • すべての実装されたインタフェース:
    ImageObserver, MenuContainer, Serializable, Accessible, Scrollable
    直系の既知のサブクラス:
    JEditorPane, JTextArea, JTextField


    @JavaBean(defaultProperty="UI")
    public abstract class JTextComponent
    extends JComponent
    implements Scrollable, Accessible
    JTextComponentは、Swingテキスト・コンポーネントのための基底クラスです。 java.awt.TextComponentクラスとある程度の互換性があります。 また、ほかのサービスも提供されており、プラグイン可能なUIやBeanのサポート以外の柔軟性もあります。 このクラスが提供する機能の使用方法については、「The Java Tutorial」の「General Rules for Using Text Components」を参照してください。
    キャレット変更
    キャレットは、Swingテキスト・コンポーネント内のプラガブル・オブジェクトです。 キャレット位置と選択領域の変更通知は、テキスト・コンポーネントに登録済みのCaretListenerインタフェースの実装に送られます。 UIは、カスタマイズしたキャレットが設定済みでないかぎりデフォルトのキャレットをインストールします。
    デフォルトでは、キャレットは、イベント・ディスパッチ・スレッド上でのすべてのドキュメントの変更を追跡し、キャレットの前(キャレット位置)への挿入またはキャレット位置の前の削除が行われた場合は、それに従って位置を更新します。
    DefaultCaretは、自身を表示しようとします。このため、JScrollPane内でテキスト・コンポーネントがスクロールされることがあります。 キャレットのデフォルトの動作を変更するには、DefaultCaret.setUpdatePolicy(int)メソッドを使用します。
    : 編集不能なテキスト・コンポーネントはペイントされない場合もありますが、キャレットは存在します。
    Commands
    テキスト・コンポーネントは、コンポーネントを操作するのに使うコマンドを提供します。 これは本質的に、コンポーネントがその機能を表現する方法です。 これらはTextActionの実装を使用して、swing Actionインタフェースの形で表現されます。 テキスト・コンポーネントがサポートするコマンド・セットは、getActions()メソッドで確認できます。 こうしたアクションは、ボタンなどから発生するキー・イベントに割り当てられます。
    テキスト入力
    テキスト・コンポーネントは、キーマップとインプット・メソッドのフレームワークを使用して柔軟で国際化されたテキスト入力をサポートしています。また、AWTリスナー・モデルとの互換性も備えています。

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

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

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

    キーボード・イベントとインプット・メソッド・イベントは、次の工程で処理されます。

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

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

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

    • エディタに印刷可能キーのコンテンツを挿入する。
    • バックスペース・キーとDelキーでコンテンツを削除する。
    • 順方向と逆方向のキャレット移動
    モデル/ビュー分割
    テキスト・コンポーネントはモデル/ビュー分割を持ちます。 テキスト・コンポーネントは、モデル、ビュー、コントローラを表すのに使うオブジェクトをまとめます。 テキスト・ドキュメント・モデルは、モデルのオブザーバとして動作するほかのビューによって共有されます(ドキュメントを複数のコンポーネントによって共有できるなど)。

    コントローラ、ドキュメント、イベント、およびViewFactory間のやりとりを示す図

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

    位置情報
    ビューでテキスト位置を指定する機能が提供されます。 この情報を判定するために、modelToView(int)viewToModel(java.awt.Point)の2つのメソッドが用意されています。
    元に戻す/再実行のサポート
    編集履歴メカニズムのサポートが提供されているので、元に戻す/再実行の操作を行うことができます。 テキスト・コンポーネントはそれ自体ではデフォルトで履歴バッファを提供しませんが、履歴バッファと組み合わせて使うと、「元に戻す/再実行」をサポートするUndoableEditレコードを提供します。 そのサポートはDocumentモデルによって提供されます。このモデルにより、UndoableEditListenerの実装の追加が可能になります。
    スレッド安全性
    Swingテキスト・コンポーネントは特定のスレッドに対して安全な操作のサポートを提供します。 テキスト・コンポーネントは高度な構成機能を持つので、提供される保護機能を使用しないこともできます。 保護機能は主にモデルにより考え出されたもので、AbstractDocumentのマニュアルでは提供される保護の前提条件を説明しています。 非同期で安全に呼び出せるメソッドには、コメントが付けられています。
    Newlines
    改行の処理方法については、DefaultEditorKitを参照してください。
    印刷のサポート
    基本的なドキュメントの印刷処理のため、いくつかのprintメソッドが用意されています。 高度な印刷処理が必要な場合は、getPrintable(java.text.MessageFormat, java.text.MessageFormat)メソッドを使用します。

    警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4以降、すべてのJavaBeans™用の長期間の格納サポートがjava.beansパッケージに追加されています。 XMLEncoderを参照してください。

    関連項目:
    Document, DocumentEvent, DocumentListener, Caret, CaretEvent, CaretListener, TextUI, View, ViewFactory, 「直列化されたフォーム」
    • フィールドの詳細

      • FOCUS_ACCELERATOR_KEY

        public static final String FOCUS_ACCELERATOR_KEY
        フォーカス・アクセラレータのバウンド・プロパティ名です。
        関連項目:
        定数フィールド値
      • DEFAULT_KEYMAP

        public static final String DEFAULT_KEYMAP
        異なるキーマップ・セットを持っていないかぎり、全JTextComponentインスタンスで共有されるデフォルトのキーマップです。
        関連項目:
        定数フィールド値
    • コンストラクタの詳細

      • JTextComponent

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

      • getUI

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

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

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

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

        public void setComponentOrientation​(ComponentOrientation o)
        次のクラスからコピーされた説明: Component
        このコンポーネント内の要素またはテキストを整列するために使用する、言語に依存する方向を設定します。 言語に依存するLayoutManagerサブクラスおよびComponentサブクラスはこのプロパティを使用してコンポーネントの配置方法および描画方法を決めます。

        構築時には、コンポーネントの方向は、明示的に指定されていないことを示すComponentOrientation.UNKNOWNに設定されます。 UNKNOWNの方向の動作はComponentOrientation.LEFT_TO_RIGHTと同じです。

        単一コンポーネントの方向を設定する場合は、このメソッドを使用します。 コンポーネント階層全体の方向を設定する場合は、applyComponentOrientationを使用します。

        このメソッドではレイアウトに関連する情報が変更されるため、コンポーネント階層が無効になります。

        オーバーライド:
        setComponentOrientation 、クラス:  Component
        パラメータ:
        o - 設定する方向
        関連項目:
        ComponentOrientation, Component.invalidate()
      • getActions

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

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

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

        public void setNavigationFilter​(NavigationFilter filter)
        NavigationFilterを設定します。 NavigationFilterDefaultCaretと、カーソルの移動を限定するデフォルトのカーソル移動アクションで使用されます。
        パラメータ:
        filter - フィルタ
        導入されたバージョン:
        1.4
      • getNavigationFilter

        public NavigationFilter getNavigationFilter​()
        NavigationFilterを返します。 NavigationFilterDefaultCaretと、カーソルの移動を限定するデフォルトのカーソル移動アクションで使用されます。 戻り値のnullはカーソルの移動と選択が制限されないことを表します。
        戻り値:
        NavigationFilter
        導入されたバージョン:
        1.4
      • getCaret

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

        @BeanProperty(expert=true,
                      description="the caret used to select/navigate")
        public void setCaret​(Caret c)
        使用するキャレットを設定します。 デフォルトで、インストールされるUIによって設定されます。 これは、必要に応じてカスタム・キャレットに変更できます。 キャレットを設定すると、PropertyChangeイベント(caret)が発生します。
        パラメータ:
        c - キャレット
        関連項目:
        getCaret()
      • getHighlighter

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

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

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

        @BeanProperty(bound=false,
                      description="determines whether automatic drag handling is enabled")
        public void setDragEnabled​(boolean b)
        自動ドラッグ処理をオンまたはオフにします。 自動ドラッグ処理を有効にするには、このプロパティの値をtrueに設定し、コンポーネントのTransferHandlerの値をnon-nullにしてください。 dragEnabledプロパティのデフォルト値はfalseです。

        このプロパティを受け入れ、ユーザーのドラッグ・ジェスチャを認識する処理は、Look & Feel実装(特にコンポーネントのTextUI)によって行われます。 自動ドラッグ処理が有効である場合、ほとんどのLook & Feel (BasicLookAndFeelのサブクラスのLook & Feelを含む)は、ユーザーが選択項目の上でマウス・ボタンを押し、マウスを数ピクセル移動すると、ドラッグ&ドロップ操作を開始します。 したがって、このプロパティをtrueに設定すると、選択の動作に微妙に影響する場合があります。

        このプロパティを無視するようなLook & Feelを使用している場合も、コンポーネントのTransferHandler上でexportAsDragを呼び出すことにより、ドラッグ&ドロップ操作を開始できます。

        パラメータ:
        b - 自動ドラッグ処理を有効にするかどうか
        例外:
        HeadlessException - btrueで、GraphicsEnvironment.isHeadless()trueを返す場合
        導入されたバージョン:
        1.4
        関連項目:
        GraphicsEnvironment.isHeadless(), getDragEnabled(), JComponent.setTransferHandler(javax.swing.TransferHandler), TransferHandler
      • getDragEnabled

        public boolean getDragEnabled​()
        自動ドラッグ処理が有効であるかどうかを返します。
        戻り値:
        dragEnabledプロパティの値
        導入されたバージョン:
        1.4
        関連項目:
        setDragEnabled(boolean)
      • setDropMode

        public final void setDropMode​(DropMode dropMode)
        このコンポーネントのドロップ・モードを設定します。 下位互換性を確保するため、このプロパティのデフォルト値はDropMode.USE_SELECTIONになっています。 ただし、ユーザー経験を改善したい場合は、DropMode.INSERTの使用をお勧めします。 これにより、テキストのある位置から別の位置へのドロップとよく似た操作を実行できますが、現在選択しているテキストとキャレット位置に影響はありません。

        JTextComponentsは次のドロップ・モードをサポートしています。

        • DropMode.USE_SELECTION
        • DropMode.INSERT

        このコンポーネントがドロップを受け付けるTransferHandlerを持っていなければ、ドロップ・モードの効果はありません。

        パラメータ:
        dropMode - 使用するドロップ・モード
        例外:
        IllegalArgumentException - ドロップ・モードがサポートされていないかnullの場合
        導入されたバージョン:
        1.6
        関連項目:
        getDropMode(), getDropLocation(), JComponent.setTransferHandler(javax.swing.TransferHandler), TransferHandler
      • getDropMode

        public final DropMode getDropMode​()
        このコンポーネントのドロップ・モードを返します。
        戻り値:
        このコンポーネントのドロップ・モード
        導入されたバージョン:
        1.6
        関連項目:
        setDropMode(javax.swing.DropMode)
      • getDropLocation

        @BeanProperty(bound=false)
        public final JTextComponent.DropLocation getDropLocation​()
        このコンポーネントがコンポーネントのドラッグ&ドロップ時にドロップ位置として視覚的に示す位置を返します。現在位置が表示されていない場合はnullを返します。

        このメソッドは、TransferHandlerからドロップ位置を照会する手段にはなりません。ドロップ位置は、TransferHandlercanImportが返され、ドロップ位置を表示する準備ができてから設定されるためです。

        このプロパティが変更されると、コンポーネントにより、プロパティ変更イベントdropLocationがトリガーされます。

        戻り値:
        ドロップ位置
        導入されたバージョン:
        1.6
        関連項目:
        setDropMode(javax.swing.DropMode), TransferHandler.canImport(TransferHandler.TransferSupport)
      • 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

        @BeanProperty(preferred=true,
                      description="the color used to render the caret")
        public void setCaretColor​(Color c)
        キャレットをレンダリングするのに使う現在の色を設定します。 これをnullに設定すると、効果的にデフォルトの色を復元します。 色を設定すると、PropertyChangeイベント(caretColor)が発生します。
        パラメータ:
        c - 色
        関連項目:
        getCaretColor()
      • getSelectionColor

        public Color getSelectionColor​()
        選択領域をレンダリングするのに使う現在の色を取り出します。
        戻り値:
      • setSelectionColor

        @BeanProperty(preferred=true,
                      description="color used to render selection background")
        public void setSelectionColor​(Color c)
        選択領域をレンダリングするのに使う現在の色を設定します。 色にnullを設定することは、Color.whiteを設定することと同じです。 色を設定すると、PropertyChangeイベント(selectionColor)が発生します。
        パラメータ:
        c - 色
        関連項目:
        getSelectionColor()
      • getSelectedTextColor

        public Color getSelectedTextColor​()
        選択したテキストをレンダリングするのに使う現在の色を取り出します。
        戻り値:
      • setSelectedTextColor

        @BeanProperty(preferred=true,
                      description="color used to render selected text")
        public void setSelectedTextColor​(Color c)
        選択したテキストをレンダリングするのに使う現在の色を設定します。 色にnullを設定することは、Color.blackと同じです。 色を設定すると、PropertyChangeイベント(selectedTextColor)が発生します。
        パラメータ:
        c - 色
        関連項目:
        getSelectedTextColor()
      • getDisabledTextColor

        public Color getDisabledTextColor​()
        無効にしたテキストをレンダリングするために使用する現在の色を取得します。
        戻り値:
      • setDisabledTextColor

        @BeanProperty(preferred=true,
                      description="color used to render disabled text")
        public void setDisabledTextColor​(Color c)
        無効にしたテキストをレンダリングするのに使う現在の色を設定します。 色を設定すると、PropertyChangeイベント(disabledTextColor)が発生します。
        パラメータ:
        c - 色
        関連項目:
        getDisabledTextColor()
      • replaceSelection

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

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

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

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

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

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

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

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

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

        public void copy​()
        関連するテキスト・モデル内の現在選択されている領域をシステム・クリップボードに転送して、テキスト・モデル内のコンテンツはそのまま残します。 現在の選択領域は元のまま残ります。 選択領域がnullの場合には何も行いません。
        関連項目:
        Toolkit.getSystemClipboard(), Clipboard
      • paste

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

        public void moveCaretPosition​(int pos)
        キャレットを新しい位置に移動して、setCaretPositionが前回呼び出されたときに定義されたマークは残しておきます。 このメソッドは、選択領域を形成します。 ドキュメントがnullの場合には何も行いません。 位置は0とコンポーネント・テキストの長さとの間でなければならず、そうでない場合は例外がスローされます。
        パラメータ:
        pos - 位置
        例外:
        IllegalArgumentException - positionに指定した値が0未満、またはコンポーネント・テキストより長い場合
        関連項目:
        setCaretPosition(int)
      • setFocusAccelerator

        @BeanProperty(description="accelerator character used to grab focus")
        public void setFocusAccelerator​(char aKey)
        受信側テキスト・コンポーネントにフォーカスを取得させるキー・アクセラレータを設定します。 アクセラレータは、プラットフォーム固有の修飾子キーと指定された文字のキーの組み合わせになります(大文字に変換される)。 たとえば、WindowsではALTキーが修飾子として使われ、MacではCTRL+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​()
        次のクラスからコピーされた説明: JComponent
        このコンポーネントに親コンポーネントがなくなったことを、このコンポーネントに通知します。 このメソッドが呼び出されると、親コンポーネントのチェーンに設定されたKeyboardActionが削除されます。 このメソッドは、ツールキットによって内部で呼び出され、プログラムから直接呼び出されることはありません。
        オーバーライド:
        removeNotify 、クラス:  JComponent
        関連項目:
        JComponent.registerKeyboardAction(java.awt.event.ActionListener, java.lang.String, javax.swing.KeyStroke, int)
      • setCaretPosition

        @BeanProperty(bound=false,
                      description="the caret position")
        public void setCaretPosition​(int position)
        TextComponentのテキスト挿入キャレットの位置を設定します。 キャレットは変更を追跡するので、コンポーネントのベースとなるテキストが変更されるとこれも移動することに注意してください。 ドキュメントがnullの場合には何も行いません。 位置は0とコンポーネント・テキストの長さとの間でなければならず、そうでない場合は例外がスローされます。
        パラメータ:
        position - 位置
        例外:
        IllegalArgumentException - positionに指定した値が0未満、またはコンポーネント・テキストより長い場合
      • getCaretPosition

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

        @BeanProperty(bound=false,
                      description="the text of this component")
        public void setText​(String t)
        このTextComponentのテキストに、指定されたテキストを設定します。 テキストがnullまたは空の場合は、古いテキストを単に削除する効果があります。 テキストが挿入されたときに結果として得られるキャレット位置は、キャレット・クラスの実装によって決定されます。

        テキストはバウンド・プロパティではないため、それが変更されてもPropertyChangeEvent はトリガーされません。 テキストの変更を待機するには、DocumentListenerを使用してください。

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

        public String getText​()
        このTextComponentに格納されたテキストを返します。 ベースとなるドキュメントがnullの場合は、NullPointerExceptionを返します。 テキストはバウンド・プロパティではないため、それが変更されてもPropertyChangeEvent はトリガーされません。 テキストの変更を待機するには、DocumentListenerを使用してください。
        戻り値:
        テキスト
        例外:
        NullPointerException - ドキュメントがnullの場合
        関連項目:
        setText(java.lang.String)
      • getSelectedText

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

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

        @BeanProperty(description="specifies if the text can be edited")
        public void setEditable​(boolean b)
        このTextComponentが編集可能かどうかを示す指定されたbooleanを設定します。 状態が変更されると、PropertyChangeイベント(editable)が発生します。
        パラメータ:
        b - 設定されるboolean
        関連項目:
        isEditable()
      • getSelectionStart

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

        @BeanProperty(bound=false,
                      description="starting location of the selection.")
        public void setSelectionStart​(int selectionStart)
        選択開始を、指定された位置に設定します。 新しい先頭は、現在の選択領域の末尾かその前に限定されます。

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

        パラメータ:
        selectionStart - テキストの開始位置≥ 0
      • getSelectionEnd

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

        @BeanProperty(bound=false,
                      description="ending location of the selection.")
        public void setSelectionEnd​(int selectionEnd)
        選択領域の末尾を、指定された位置に設定します。 新しい末尾は、現在の選択領域の先頭またはそのあとに限定されます。

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

        パラメータ:
        selectionEnd - テキストの末尾位置≥ 0
      • select

        public void select​(int selectionStart,
                           int selectionEnd)
        指定された始点と終点の間にあるテキストを選択します。

        このメソッドは選択テキストの始点と終点を設定します。始点は0以上でなければならないという制約が適用されます。 終点は始点と同じか、それより大きい値でなければならず、またテキスト・コンポーネントのテキストの長さに等しいか、それより短くなければいけません。

        呼出し側が一貫性のない値または境界外の値を指定した場合、メソッドはメッセージを表示せずに、これらの制約を適用します。 具体的には、始点または終点がテキストの長さを超える場合、テキストと同じ長さに設定し直します。 始点がゼロより小さい場合、ゼロに設定し直します。終点が始点より小さい場合、始点に設定し直します。

        この呼出しは、下位互換のために提供されています。 これは、setCaretPositionの呼出しに回送され、それにmoveCaretPositionの呼出しが続きます。 選択領域を管理する望ましい方法は、これらのメソッドを直接呼び出すことです。

        パラメータ:
        selectionStart - テキストの始点
        selectionEnd - テキストの終点
        関連項目:
        setCaretPosition(int), moveCaretPosition(int)
      • selectAll

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

        @BeanProperty(bound=false)
        public Dimension getPreferredScrollableViewportSize​()
        ビュー・コンポーネントのビュー・ポートの適切なサイズを返します。 これを実装すると、コンポーネントの適切なサイズを返すデフォルト動作を実行できます。
        定義:
        getPreferredScrollableViewportSize 、インタフェース: Scrollable
        戻り値:
        このScrollableをビューとして持つJViewportpreferredSize
        関連項目:
        JComponent.getPreferredSize()
      • getScrollableUnitIncrement

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

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

        定義:
        getScrollableUnitIncrement 、インタフェース: Scrollable
        パラメータ:
        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ブロック分の行または列を完全にエクスポーズするスクロール増分値を計算します。

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

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

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

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

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

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

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

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

        public boolean print​()
                      throws PrinterException
        印刷ダイアログを表示し、対話型モードで、ヘッダー・テキストまたはフッター・テキストを指定しないでこのJTextComponentを印刷する簡易印刷メソッドです。 注: このメソッドは印刷が完了するまでブロックされます。

        注: ヘッドレス・モードでは、ダイアログは表示されません。

        このメソッドは、印刷の実行時に、完全な機能を備えたprintメソッドを呼び出します。

        戻り値:
        ユーザーが印刷を取り消さないかぎりtrue
        例外:
        PrinterException - 印刷システムのエラーが原因でジョブが停止した場合
        SecurityException - 印刷ジョブ要求の開始がこのスレッドに許可されていない場合
        導入されたバージョン:
        1.6
        関連項目:
        print(MessageFormat, MessageFormat, boolean, PrintService, PrintRequestAttributeSet, boolean)
      • print

        public boolean print​(MessageFormat headerFormat,
                             MessageFormat footerFormat)
                      throws PrinterException
        印刷ダイアログを表示し、対話型モードで、ヘッダー・テキストおよびフッター・テキストを指定してこのJTextComponentを印刷する簡易印刷メソッドです。 注: このメソッドは印刷が完了するまでブロックされます。

        注: ヘッドレス・モードでは、ダイアログは表示されません。

        このメソッドは、印刷の実行時に、完全な機能を備えたprintメソッドを呼び出します。

        パラメータ:
        headerFormat - ヘッダーとして使用されるテキスト(MessageFormat形式)。ヘッダーがない場合はnull
        footerFormat - フッターとして使用されるテキスト(MessageFormat形式)。フッターがない場合はnull
        戻り値:
        ユーザーが印刷を取り消さないかぎりtrue
        例外:
        PrinterException - 印刷システムのエラーが原因でジョブが停止した場合
        SecurityException - 印刷ジョブ要求の開始がこのスレッドに許可されていない場合
        導入されたバージョン:
        1.6
        関連項目:
        print(MessageFormat, MessageFormat, boolean, PrintService, PrintRequestAttributeSet, boolean), MessageFormat
      • print

        public boolean print​(MessageFormat headerFormat,
                             MessageFormat footerFormat,
                             boolean showPrintDialog,
                             PrintService service,
                             PrintRequestAttributeSet attributes,
                             boolean interactive)
                      throws PrinterException
        このJTextComponentの内容を印刷します。 注: このメソッドは印刷が完了するまでブロックされます。

        MessageFormat引数を指定すると、ページのヘッダー・テキストとフッター・テキストを出力に追加できます。 印刷コードは、それらの形式からStringsを要求して、書式付き文字列に含まれる単一の項目(現在のページ番号を表すInteger)を提供します。

        showPrintDialog booleanパラメータを使用すると、印刷ダイアログがユーザーに表示されるかどうかを指定できます。 ダイアログが表示されると、ユーザーはそれを使用して印刷属性を変更したり、印刷を取り消したりすることができます。

        serviceでは、印刷ダイアログの初期値PrintServiceや、ダイアログが表示されないときに印刷するPrintServiceを指定できます。

        attributesは、印刷ダイアログの初期値を指定したり、ダイアログが表示されないときに必要な属性を提供するために使用できます。attributesを使って、ジョブの印刷方法(両面または片面)を制御できます。

        interactive booleanパラメータでは、印刷を対話型モードで行うかどうかを指定できます。 trueの場合は、印刷中に中止オプションの付いた進捗ダイアログが表示されます。 このダイアログは、イベント・ディスパッチ・スレッド上でprintを行う場合はモーダル、それ以外の場合は非モーダルです。 警告: イベント・ディスパッチ・スレッド上で、 interactive falseを指定してこのメソッドを呼び出すと、印刷が完了するまで、再ペイントを含むすべてのイベントの処理が中断されます。 表示できるGUIのないアプリケーションから印刷するときにのみ、これをお薦めします。

        注: ヘッドレス・モードでは、showPrintDialogパラメータとinteractiveパラメータが無視されるため、ダイアログは表示されません。

        このメソッドを使用すると、印刷中にdocumentが変更される心配がありません。 視覚的に指定するには、印刷中にsetEnabled(false)を設定します。

        このメソッドは、getPrintable(java.text.MessageFormat, java.text.MessageFormat)を使ってドキュメントの内容をレンダリングします。

        このメソッドはスレッド・セーフですが、ほとんどのSwingメソッドは違います。 詳細は、「Swingの同時実行性」を参照してください。

        使用例 次のコードの抜粋は、クロス・プラットフォーム型の印刷ダイアログを表示し、対話型モードでJTextComponentを印刷します(ただしユーザーが印刷ダイアログを取り消した場合を除く)。

         textComponent.print(new MessageFormat("My text component header"),
             new MessageFormat("Footer. Page - {0}"), true, null, null, true);
         

        イベント・ディスパッチ・スレッド以外でこのコードを実行すると、バックグラウンドで印刷が行われます。 バックグラウンド印刷では、次のパターンが使用されることがあります。

             FutureTask<Boolean> future =
                 new FutureTask<Boolean>(
                     new Callable<Boolean>() {
                         public Boolean call() {
                             return textComponent.print(.....);
                         }
                     });
             executor.execute(future);
         
        パラメータ:
        headerFormat - ヘッダーとして使用されるテキスト(MessageFormat形式)。ヘッダーがない場合はnull
        footerFormat - フッターとして使用されるテキスト(MessageFormat形式)。フッターがない場合はnull
        showPrintDialog - 印刷ダイアログを表示する場合はtrue、そうでない場合はfalse
        service - 初期PrintServiceか、デフォルトの場合はnull
        attributes - 印刷ジョブに適用されるジョブ属性。何も適用しない場合はnull
        interactive - 対話型モードで印刷するかどうか
        戻り値:
        ユーザーが印刷を取り消さないかぎりtrue
        例外:
        PrinterException - 印刷システムのエラーが原因でジョブが停止した場合
        SecurityException - 印刷ジョブ要求の開始がこのスレッドに許可されていない場合
        導入されたバージョン:
        1.6
        関連項目:
        getPrintable(java.text.MessageFormat, java.text.MessageFormat), MessageFormat, GraphicsEnvironment.isHeadless(), FutureTask
      • getPrintable

        public Printable getPrintable​(MessageFormat headerFormat,
                                      MessageFormat footerFormat)
        このJTextComponentの内容を印刷するために使用するPrintableを返します。 返されるPrintableは、用紙のサイズに合わせて、画面に表示したとおりにドキュメントを印刷します。 複雑なレポートやドキュメントを作成する場合は、返されるPrintableを別のPrintableにラップすることもできます。

        返されるPrintableは、このJTextComponentdocumentを共有します。 開発者が責任を持って、このPrintableの使用中にdocumentが変更されないようにします。 印刷中にdocumentが変更されると、印刷動作は保証されません。

        MessageFormat引数を指定すると、ページのヘッダー・テキストとフッター・テキストを出力に追加できます。 印刷コードは、それらの形式からStringsを要求して、書式付き文字列に含まれる単一の項目(現在のページ番号を表すInteger)を提供します。

        印刷時に返されるPrintableは、ページ・サイズに合わせてドキュメントの内容の書式設定を行います。 行折返しを適切に行うためには、全ページのimageable widthを同じにする必要があります。 PageFormat.getImageableWidth()を参照してください。

        このメソッドはスレッド・セーフですが、ほとんどのSwingメソッドは違います。 詳細は、Swingの同時実行性を参照してください。

        返されるPrintableは、どのスレッド上でも印刷できます。

        この実装の返されるPrintableは、どのスレッド上で使用されているかに関係なく、イベント・ディスパッチ・スレッド上のすべてのペイントを実行します。

        パラメータ:
        headerFormat - ヘッダーとして使用されるテキスト(MessageFormat形式)。ヘッダーがない場合はnull
        footerFormat - フッターとして使用されるテキスト(MessageFormat形式)。フッターがない場合はnull
        戻り値:
        このJTextComponentの内容を印刷するために使用するPrintable
        導入されたバージョン:
        1.6
        関連項目:
        Printable, PageFormat, Document.render(java.lang.Runnable)
      • getAccessibleContext

        @BeanProperty(bound=false)
        public AccessibleContext getAccessibleContext​()
        このJTextComponentに関連付けられているAccessibleContextを取得します。 テキスト・コンポーネントの場合、AccessibleContextAccessibleJTextComponentの形式を取ります。 必要に応じて、新しいAccessibleJTextComponentインスタンスが作成されます。
        定義:
        getAccessibleContext 、インタフェース: Accessible
        オーバーライド:
        getAccessibleContext、クラス: Component
        戻り値:
        このJTextComponentAccessibleContextとして機能するAccessibleJTextComponent
      • paramString

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

        JFCコンポーネントの特定の新しい側面についての情報を提供するには、paramStringをオーバーライドします。

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

        protected void processInputMethodEvent​(InputMethodEvent e)
        次のクラスからコピーされた説明: Component
        このコンポーネントで発生するインプット・メソッド・イベントを、登録されているInputMethodListenerオブジェクトにディスパッチすることによって処理します。

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

        • InputMethodListenerオブジェクトがaddInputMethodListenerによって登録されている。
        • enableEventsによってインプット・メソッド・イベントが使用可能になっている。

        イベント・パラメータがnullである場合は、動作が未指定のため、例外が発生する可能性があります。

        オーバーライド:
        processInputMethodEvent 、クラス:  Component
        パラメータ:
        e - インプット・メソッド・イベント
        関連項目:
        InputMethodEvent, InputMethodListener, Component.addInputMethodListener(java.awt.event.InputMethodListener), Component.enableEvents(long)
      • getInputMethodRequests

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

        protected boolean saveComposedText​(int pos)
        指定された位置の周りの変換テキストを保存します。 指定された位置の周りの変換テキスト(ある場合)がバッキング・ストアに保存され、ドキュメントから削除されます。
        パラメータ:
        pos - 変換テキストの位置を識別するドキュメントの位置
        戻り値:
        変換テキストが存在して保存された場合はtrue、そうでない場合はfalse
        導入されたバージョン:
        1.7
        関連項目:
        restoreComposedText()
      • restoreComposedText

        protected void restoreComposedText​()
        saveComposedTextによって以前保存された変換テキストを復元します。 保存された変換テキストがドキュメントに挿入されます。 このメソッドは、saveComposedTexttrueを返す場合にだけ呼び出される必要があります。
        導入されたバージョン:
        1.7
        関連項目:
        saveComposedText(int)