RichTextBox クラス
Windows リッチ テキスト ボックス コントロールを表します。
この型のすべてのメンバの一覧については、RichTextBox メンバ を参照してください。
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.Windows.Forms.Control
System.Windows.Forms.TextBoxBase
System.Windows.Forms.RichTextBox
Public Class RichTextBox
Inherits TextBoxBase
[C#]
public class RichTextBox : TextBoxBase
[C++]
public __gc class RichTextBox : public TextBoxBase
[JScript]
public class RichTextBox extends TextBoxBase
スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。
解説
RichTextBox コントロールは、ユーザーがテキストを入力したり、入力されたテキストを編集できます。また、このコントロールには、標準の TextBox コントロールよりも高度な書式設定機能が備わっています。テキストは、このコントロールに直接割り当てることも、リッチ テキスト形式 (RTF: Rich Text Format) ファイルや書式なしテキスト ファイルから読み込むこともできます。コントロール内のテキストには、文字書式または段落書式を割り当てることができます。
RichTextBox コントロールには、入力されているテキストの任意の部分に書式を設定するためのプロパティがいくつか用意されています。テキストの書式を変更するには、最初に、そのテキストを選択する必要があります。文字書式や段落書式を割り当てることができるのは、選択されているテキストだけです。選択されているテキスト部分の書式を設定すると、その設定が変更されるか、コントロールのドキュメントの別部分が選択されるまでは、選択されているテキストの直後に入力した全テキストに同じ書式が適用されます。 SelectionFont プロパティを使用すると、テキストに太字または斜体の属性を適用できます。このプロパティを使用して、テキストのサイズやタイプフェイスも変更できます。 SelectionColor プロパティを使用すると、テキストの色を変更できます。箇条書きリストを作成するには、 SelectionBullet プロパティを使用します。 SelectionIndent 、 SelectionRightIndent 、 SelectionHangingIndent の各プロパティを設定すると、段落書式も調整できます。
RichTextBox コントロールには、ファイルを開く機能および保存する機能を提供するメソッドがあります。 LoadFile メソッドを使用すると、既存の RTF ファイルまたは ASCII テキスト ファイルをコントロールに読み込むことができます。既に開いているデータ ストリームからデータを読み込むこともできます。 SaveFile を使用すると、ファイルを RTF 形式または ASCII テキスト形式で保存できます。 LoadFile メソッドと同様、開いているデータ ストリームにファイルを保存する場合も SaveFile メソッドを使用できます。 RichTextBox コントロールには、テキストの文字列を検索する機能も用意されています。 Find メソッドは、コントロールに入力されたテキストの特定の文字および文字列を両方とも検索するようにオーバーロードできます。
また、 RichTextBox コントロールを初期化して、メモリに格納されているデータを使用することもできます。たとえば、 Rtf プロパティは、テキストの書式設定方法を決定する RTF コードを含めて、表示するテキストを含んだ文字列に初期化できます。
コントロール内のテキストにリンク (Web サイトへのリンク) が含まれている場合、 DetectUrls プロパティを使用すると、コントロールのテキストにリンクを適切に表示できます。そして、 LinkClicked イベントを処理し、リンクに関連付けられているタスクを実行できます。 SelectionProtected プロパティを使用して、コントロール内のテキストをユーザーが操作できないように保護できます。コントロール内でテキストを保護した場合、 Protected イベントの処理時に、そのテキストをユーザーが変更しようとした場合に、テキストが保護されていることをユーザーに警告するか、保護されているテキストを操作するための標準フォームを表示するかを指定できます。
TextBox コントロールを使用しているアプリケーションを RichTextBox コントロールを使用するように変更するのは簡単です。 TextBox コントロールには 64K までの文字しか入力できませんが、このような容量制限は RichTextBox コントロールにはありません。通常、 RichTextBox は、Microsoft Word などのワード プロセッシング アプリケーションの機能に類似した、テキストの処理機能や表示機能を提供するために使用されます。
使用例
[Visual Basic, C#, C++] RTF ファイルをコントロールに読み込み、最初に出現する単語 "Text" を検索する RichTextBox コントロールの作成例を次に示します。このコードは、選択されているテキストのフォントのスタイル、サイズ、および色を変更し、変更した内容を元のファイルに保存します。コントロールを Form に追加した時点で、このコードは終了します。このコード例は、コード内で作成したメソッドが Form クラスに追加され、そのフォームのコンストラクタから呼び出されることを前提にしています。また、単語 "Text" が含まれている RTF ファイルが C ドライブのルートに作成されていることも前提となります。
Public Sub CreateMyRichTextBox()
Dim richTextBox1 As New RichTextBox()
richTextBox1.Dock = DockStyle.Fill
richTextBox1.LoadFile("C:\MyDocument.rtf")
richTextBox1.Find("Text", RichTextBoxFinds.MatchCase)
richTextBox1.SelectionFont = New Font("Verdana", 12, FontStyle.Bold)
richTextBox1.SelectionColor = Color.Red
richTextBox1.SaveFile("C:\MyDocument.rtf", RichTextBoxStreamType.RichText)
Me.Controls.Add(richTextBox1)
End Sub
[C#]
public void CreateMyRichTextBox()
{
RichTextBox richTextBox1 = new RichTextBox();
richTextBox1.Dock = DockStyle.Fill;
richTextBox1.LoadFile("C:\\MyDocument.rtf");
richTextBox1.Find("Text", RichTextBoxFinds.MatchCase);
richTextBox1.SelectionFont = new Font("Verdana", 12, FontStyle.Bold);
richTextBox1.SelectionColor = Color.Red;
richTextBox1.SaveFile("C:\\MyDocument.rtf", RichTextBoxStreamType.RichText);
this.Controls.Add(richTextBox1);
}
[C++]
public:
void CreateMyRichTextBox()
{
RichTextBox* richTextBox1 = new RichTextBox();
richTextBox1->Dock = DockStyle::Fill;
richTextBox1->LoadFile(S"C:\\MyDocument.rtf");
richTextBox1->Find(S"Text", RichTextBoxFinds::MatchCase);
richTextBox1->SelectionFont = new System::Drawing::Font(S"Verdana", 12, FontStyle::Bold);
richTextBox1->SelectionColor = Color::Red;
richTextBox1->SaveFile(S"C:\\MyDocument.rtf", RichTextBoxStreamType::RichText);
this->Controls->Add(richTextBox1);
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Windows.Forms
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: System.Windows.Forms (System.Windows.Forms.dll 内)
参照
RichTextBox メンバ | System.Windows.Forms 名前空間 | TextBoxBase | TextBox