Buenas otra vez gente! Les comento que ya pude solucionarlo, lo logré respondiendo a la primera de mis preguntas, luego de ponerme a probar por cuenta propia algunas propiedades del componente ^^ La solución fue relativamente simple, y me implico solamente el crear un segundo RichTextBox (El cual permanece invisible durante la ejecución del programa), al cual lo utilizo para modificar el formato de la nueva linea a ingresar, y luego copiarlo al RichTetxtBox original.
Para unir un RichTextBox con otro, simplemente pongo el puntero al final del primer RTB y selecciono el texto del segundo. Luego utilizando simplemente la propiedad .selRTF, realizo la siguiente igualdad RTB1.selRTF=RTB2.SelRTF.
Para que lo puedan ver en acción, por si alguno llega a tener la misma inquietud que yo, modifiqué el codigo anterior (El nombre del nuevo RichTextBox es "T2"):
Código VB:
Ver originalPrivate Sub Form_Load()
With Combo1
.List(0) = "Verde"
.ItemData(0) = 1
.List(1) = "Rojo"
.ItemData(1) = 2
.List(2) = "Amarillo"
.ItemData(2) = 3
End With
BEnviar.Caption = "Enviar"
T2.Visible = False
End Sub
Private Sub BEnviar_Click()
T2.Text = TextoAEnviar.Text
Color Combo1.ItemData(Combo1.ListIndex), Len(TextoAEnviar.Text & vbCrLf)
T.SelStart = Len(T.Text)
T.SelRTF = T2.TextRTF
End Sub
Private Sub Color(From As Integer, LenDato As Integer)
T2.SelStart = 0
T2.SelLength = LenDato
Select Case From
Case 1
T2.SelColor = vbGreen
Case 2
T2.SelColor = vbRed
Case 3
T2.SelColor = vbYellow
End Select
End Sub
Saludos!