Public TempFlag As BooleanPrivate Sub Command1_Click()
    Dim i As Integer
    i = Len(RichTextBox1.Text)
    RichTextBox1.Text = RichTextBox1.Text & Text1.Text & vbCrLf
    RichTextBox1.SelStart = i
    RichTextBox1.SelLength = Len(Text1.Text)
    
    If TempFlag = False Then
        RichTextBox1.SelColor = vbRed
        TempFlag = True
    Else
        RichTextBox1.SelColor = vbBlue
        TempFlag = False
    End If
End Sub以上是代码,原本意思的由按钮不停发送TEXTBOX文本至RichTextBox,并设置奇数行为红色字体,偶数行为兰色字体,但是输出结果是除了当前行为偶数行时才为兰色,其他行都为红色,这是为什么????请教高手

解决方案 »

  1.   

    一个办法可以是将文本框内容保存成 *.rtf。
    *.rtf 文件是可以设置这些字体的格式的。然后重新载入。具体你可以参考 *.rtf 文件格式
      

  2.   

    可以先移动到最后,设置颜色,再添加文字:Public TempFlag As BooleanPrivate Sub Command1_Click()
        RichTextBox1.SelStart = Len(RichTextBox1.Text)
         
        If TempFlag = False Then
            RichTextBox1.SelColor = vbRed
            TempFlag = True
        Else
            RichTextBox1.SelColor = vbBlue
            TempFlag = False
        End If
        
        RichTextBox1.SelText = Text1.Text & vbCrLf
    End Sub