hola vieras que estoy con un problema muy similar pero resulta que si le doy un enter la palabra que quiero que cambie de color no cambia alguien me podria decir como se puede resolver esto
Hola resulta que tengo que hacer un efecto que se seleccione una palabra y le cambie de color, utilice la propiedad find y selectColor pero sitengo varias palabras que quiero cambiar como "Create " solo me cambia la primera y las demas no.
les agradeceria me ayudaran ya que no se como hacer, le pego una copia del codigo para que vean si es un error mio u otra cosa. A por cierto esta en VB.NET
gracias de antemano
Private Sub analisisLexicoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles analisisLexicoToolStripMenuItem.Click 'realiza la busqueda de las palabras y les cambia de color segun su categoria Dim Lineas() As String 'Almacena el valor de la linea de texto Dim Vec_PalabrasEvaluar() As String 'Almacena palabra por palabra por medio de la funcion split
Lineas = rtbTexto.Lines
For a As Integer = 0 To UBound(Lineas) Vec_PalabrasEvaluar = Split(Lineas(a), " ") For b As Integer = 0 To straux.Count - 1 For c As Integer = 0 To UBound(Vec_PalabrasEvaluar) If Vec_PalabrasEvaluar(c) = straux(b) Then 'MessageBox.Show(Vec_PalabrasEvaluar(c), "si", MessageBoxButtons.OK) CambiaColor(straux(b)) End If Next Next Next
End Sub
Public Sub CambiaColor(ByVal vec As String) Dim wordToFind As String = vec
If rtbTexto.TextLength > 0 Then 'rtbTexto.Find(wordToFind, rtbTexto.SelectionStart, rtbTexto.SelectionLength, RichTextBoxFinds.WholeWord Or RichTextBoxFinds.MatchCase) 'se hace el cambio de color Dim indexToText As Integer = rtbTexto.Find(wordToFind, RichTextBoxFinds.MatchCase Or RichTextBoxFinds.WholeWord)
rtbTexto.Select(indexToText, wordToFind.Length) rtbTexto.SelectionColor = Color.Blue End If End Sub