hola . estoy travajando sobre un RichTextBox pero tengo problemas al leer unos caracteres del mismo texo . quirero q lea los caracteres y lo q esta adentro lo ponga el color asignado y deje el texto igual pero q cambie eso nada mas .
ejemplo
rojo = [["ak iria el texto q se pone color rojo"]]
verde = {{ "ak iria el texto q se pone color verde" }}
use el split pero el split me lee el texto de adelante y lo otro se borra
me podria echar una ayudita
http://www.recursosvisualbasic.com.ar/htm/tutoriales/richtextbox.htm
si . ese lo vi hace un rato esta bueno pero lo q yo busco es como leer ciertos caracteres
y q el codigo busque en el texto la cierta frase y que esa frase se remplaze por un color
como por ejemplo este codigo de esta misma web " [color =red ] esta parte del texto se remplaza por el color rojo [ /color ] " quedando asi esta parte del texto se remplaza por el color rojo
ese busqo yo
SelStart = posicioninicial
SelLength = longitud
SelColor = color
pero la idea es buscar [[ ]] lo del medio no ,
"[[ esto es un texto ak termina ]]
me quedo
Dim Pos As Integer
Dim PalabraClave As String
PalabraClave = "[["
RichTextBox.SelStart = Pos - 1
RichTextBox.SelLength = Len(PalabraClave)
RichTextBox.SetFocus
RichTextBox1.SelColor = vbRed
pero busca esto directamente [[ y yo quero q busque "[[ ]]" y me selecione el texto q se encuentra en el medio de los corchetes y les cambie el color nada mas
Replace()
Lee un Tutorial Basico de Basic6
pero la idea es buscar [[ ]] lo del medio no ,
"[[ esto es un texto ak termina ]]
me quedo
Dim Pos As Integer
Dim PalabraClave As String
PalabraClave = "[["
RichTextBox.SelStart = Pos - 1
RichTextBox.SelLength = Len(PalabraClave)
RichTextBox.SetFocus
RichTextBox1.SelColor = vbRed
pero busca esto directamente [[ y yo quero q busque "[[ ]]" y me selecione el texto q se encuentra en el medio de los corchetes y les cambie el color nada mas
Busca las posiciones de ambos limitadores, guardalos has las operaciones para calcular el tramo sin los limitadores iniciales, despues reemplaza los limitadores si asi es tu proceso y por ultimo ilumina dicho texto entre las pociones del inicio y fin del texto definido por las posiciones ya guardadas.
Puedes usar InStr(), Replace().
me podrias dar un ejemplo o hacerme esa parte del code , porq no entiendo :-[
Cita de: rembolso en 15 Octubre 2009, 23:48 PM
me podrias dar un ejemplo o hacerme esa parte del code , porq no entiendo :-[
Dim pos1 As Long, pos2 As Long
Const datos = "Miguel {Angel Ortega} Avila"
pos1 = InStr(datos, "{") + 1
pos2 = InStr(datos, "}")
MsgBox Mid(datos, pos1, pos2 - pos1)
Dulces Lunas
gracias . eso es loq buscava
Por el MP que me mandaste veo que estas mas despistado que nada, aquí tienes
Private Sub Command1_Click()
Dim Pos1 As String
Dim Pos2 As String
Const IniPos As Integer = 1
Pos1 = InStr(IniPos, RichTextBox1.Text, "{", vbTextCompare)
Pos2 = InStr(Pos1, RichTextBox1.Text, "}", vbTextCompare) - 1
' // Sin Reemplazar los caracteres
RichTextBox1.SelStart = Pos1
RichTextBox1.SelLength = Pos2 - Pos1
RichTextBox1.SelColor = vbRed
End Sub
Dulces Lunas