problema con textbox multiline para armar un programa

Iniciado por imatzel, 29 Junio 2012, 16:53 PM

0 Miembros y 1 Visitante están viendo este tema.

imatzel

hola tengo un problemilla estoy armando un formulario para post y tengo un problema con los codigos de visual basic

bueno lo que quiero hacer es meter en un textbox1 multiline digamos

< a href="http://pedro.com/dfsafa">http://pedro.com/dfsafa</a>
< a href="http://jorge.com/eeeee">http://jorge.com/eeeee</a>
< a href="http://pedro.com/ddddd">http://pedro.com/ddddd</a>
< a href="http://panchito.com/jyjyjyjy">http://panchito.com/jyjyjyjy</a>
< a href="http://ramiro.com/eetetet">http://ramiro.com/eetetet</a>

ahora quiero que en otro textbox2 al pulsar un boton comando

me bote lo siguiente

< a href="http://pedro.com/dfsafa">parte 1</a>
< a href="http://jorge.com/eeeee">parte 2</a>
< a href="http://pedro.com/ddddd">parte 3</a>
< a href="http://panchito.com/jyjyjyjy">parte 4</a>
< a href="http://ramiro.com/eetetet">parte 5</a>

pues quiero lograr eso ni mas ni menos espero que alguien me pueda ayudar con el codigo el primer problema que le veo ahi es que el textbox1 debera leerse linea por linea para que se pueda trabajar con cada linea
el segundo problema que le veo es como poder seleccionar el enlace de la linea del textbox1 digamos http://pedro.com/dfsafa para poder botar < a href="http://pedro.com/dfsafa">parte 1</a> y asi sucesivamente con todos
y el tercer problema si es que se puede solucionar los dos anteriores es como cambiar en cada linea la parte que dice "parte1, parte2 , parte 3, etc...
alguna idea

Yoghurt

#1
Es algo simple... Eso yo lo hago con mi editor de texto PSEditor usando "expresiones regulares".

Para hacerlo en Visual Basic primero hay que seleccionar el texto que necesitas. Ya que todos empiezan y terminan con " lo usaremos para el proceso.
Código (vb) [Seleccionar]

'TextBox1 contiene los datos de los links que quieres procesar.
'para este proposito:
'TextBox1 = "< a href=""http://pedro.com/dfsafa"">[url]http://pedro.com/dfsafa[/url]</a>"
Dim sFound As String
Dim iStart As Integer, iEnd As Integer
Const sFind = """"

'iStart = FindStr(TextBox1, sFind, 0, vbStrCompare)
'iEnd = FindStr(TextBox1, sFind, iStart+1, vbStrCompare)
'Modificado para adecuarse a la realidad :/
iStart = InStr(0,TextBox1, sFind)
iEnd = InStr( iStart+1, TextBox1, sFind)
sFound = Mid$(TextBox1, iStart, (iEnd - iStart))

sFound contendrá lo que sea que esté entre dos ". Y pudes usarlo de esta forma:
Código (vb) [Seleccionar]

'TextBox2 para estos propositos es el Cuadro de texto al que quieres agregar la informacion
TextBox2 = "<a href=""" & sFound & ">Parte 1</a>"


Espero haber ayudado a tus bases, solo sigue aprendiendo y no esperes que alguien haga lo que tu debes hacer.

79137913

HOLA!!!

Hola, solo voy a repetir, AAaron... Hace uso de funciones de VB6.

No existe FindStr, En vb6 es InStr para corregir tu codigo a vb6 hay que cambiar estas lineas:
Código (vb) [Seleccionar]
iStart = FindStr(TextBox1, sFind, 0, vbStrCompare)
iEnd = FindStr(TextBox1, sFind, iStart+1, vbStrCompare)


Por estas:
Código (vb) [Seleccionar]
iStart = InStr(0,TextBox1, sFind)
iEnd = InStr( iStart+1, TextBox1, sFind)


GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*