RichTexBoxについて への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 パールマン  (社会人) 投稿日時 2011/2/14 12:50:53
ご参考になりましたら幸いです。

Dim iL as Integer

    ' テキストボックスに書かれた文字数を取得する 
    iL = Me.TextBox1.TextLength


投稿者 layton  (中学生) 投稿日時 2011/1/31 17:25:23
ご返答ありがとうございます。

RichTextBox1 の名前を TextBox1 にしたのはちょっとしたミスです申し訳ありませんでした。
すいませんがTextLengthとはどのように使うのですか?よかったらコードとか書いてくれるとありがたいです。

ご返答お願いします。
投稿者 とくま  (社会人) 投稿日時 2011/1/31 16:03:40
SelectionColor があるのは RichTextBox ですが
わざわざ RichTextBox1 の名前を TextBox1 に修正したのですか?
状況が分からない他人に質問するのですから、紛らわしい修正は
しない方がいいと思いますが。

つねに
TextBox1.Text += ("A")

する不思議なコードですが。。。

このコードだと最後のキーワード部分が選択状態となり、
そのまま入力すると選択部分を上書き入力してしまいます。
カーソルの位置を入力文字列の最終位置なり、ボタン押下
時にあった位置に戻しておくべきでは?

質問にある、入力文字列の最終位置の色変更ですが、
TextLength で入力文字列の長さが取れます。
そこから選択範囲の長さ0で Select できます。
その状態で SelectionColor を Black に変えるだけです。
投稿者 layton  (中学生) 投稿日時 2011/1/30 16:07:54
すみませんが

    Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.Click
        If Forms.RadioButtonA.Checked Then
            TextBox1.Text += ("A")
            Dim pattern As String = "A"
            Dim matches = System.Text.RegularExpressions.Regex.Matches(TextBox1.Text, pattern)

            For Each match As System.Text.RegularExpressions.Match In matches
                Dim start As Integer = match.Index
                Dim length As Integer = match.Length
                TextBox1.Select(start, length)
                TextBox1.SelectionColor = Color.Red
            Next
        End If
    End Sub

とすると次の文字が赤くなってしまいます次から書くときには黒くするにはどうしたらいいですか?
ついでにカーソルがあるところにラジオボタンのテキストを書き込めるようにするにはどうしたらいいですか?よかったら教えてください。

よろしくお願いします。
投稿者 layton  (中学生) 投稿日時 2011/1/29 18:09:11
を使っています
button1をクリックすると選択しているラジオボタンのテキストがリッチテキストボックスの書いてあるテキストの最後に書かれさらに書かれたラジオボタンのテキストの文字だけ赤色にするという風にしたいのですがどうすればいいですか?