Ver Mensaje Individual
  #11 (permalink)  
Antiguo 13/09/2009, 13:52
hunter18
 
Fecha de Ingreso: junio-2008
Mensajes: 343
Antigüedad: 16 años, 9 meses
Puntos: 4
Respuesta: Como saber cuando se paso por un salto de linea RichTextBox?

Que tal tio gracias por las funciones la mejor alternativa es utilizando el metodo find que te da la opcion de distingir mayus. de minus. con el aprametro rtfMatchCase pero ese no era el dilema, ya tenia algo similar.

Si recordaras la idea era encontrar los saltos de lineas que se encuentran antes de la palabra encontrada con el metodo find, tu me diste la funcion ContarSaltos y se ejecuta asi

PosicionTexto = InStr(1, RichTextBox1.Text, "Linea 3")
Saltosquehay = ContarSaltos(Left$(RichTextBox1.Text, PosicionTexto - 1))

Pero siempre toma la primera coincidencia encontrada como podria fusionar ambas funciones para lograr lo que necesito?

Ah!, como decias en la funcion BuscaTexto, una vez que se llega al final hay que volver a colocar el cursor al inicio ya solucione eso, solo faltaria contar los saltos antes de dicha palabra encontrada, ahi dejo la funcion que estoy utilizando

Código:
Private Sub BuscaTexto2(ByVal TextoABuscar As String, TextBox As RichTextBox)
Dim PosicionTexto As Double
If TextBox.SelStart >= Len(TextBox.Text) Then Exit Sub

If TextBox.SelStart = 0 And Left$(TextBox.Text, Len(TextoABuscar)) = TextoABuscar And TextBox.SelText <> TextoABuscar Then
TextBox.SelLength = Len(TextoABuscar)
Exit Sub
End If

PosicionTexto = TextBox.Find(TextoABuscar, TextBox.SelStart + TextBox.SelLength)
If PosicionTexto > 0 Then
TextBox.SelStart = PosicionTexto
TextBox.SelLength = Len(TextoABuscar)
End If

Dim Cade As Integer, LenTotal As Integer
Cade = TextBox.SelStart + TextBox.SelLength
LenTotal = Len(TextBox.Text)
If LenTotal = Cade Then TextBox.SelStart = 0

'##AQUI HABRIA QUE APLICA LA FUNCION ContarSaltos PARA CONTAR LOS SALTOS##
'No se como contar los saltos aunque ya tengo las coordenadas de la palabra por que si utilizo la palabra en si siempre tomara solo la 1era coincidencia?
End Sub