elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  ¿Cómo saber cual textbox contiene un string igual a otro?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo saber cual textbox contiene un string igual a otro?  (Leído 3,693 veces)
rapbyone

Desconectado Desconectado

Mensajes: 173


Ver Perfil
¿Cómo saber cual textbox contiene un string igual a otro?
« en: 3 Septiembre 2016, 08:15 am »

Amigos míos, solicito su apreciada ayuda: tengo mi formulario de la siguiente manera:



A través del command_button Realizo una comprobación entre los 3 texbox de la izquierda, con el textbox de la derecha para saber si el string del text4 se repite en alguno de los textbox de la izquierda a través del siguiente código:

Código
  1. Private Sub Command1_Click()
  2. If Text4.Text = Text1.Text Or Text4.Text = Text2.Text Or Text4.Text = Text3.Text Then
  3. MsgBox "iguales"
  4. End If
  5. End Sub

El tema es que necesito averiguar cual de los 3 de la izquierda es el que tiene el mismo string que el de la derecha, es decir poder obtener el nombre del control que tiene el mismo string.

Se puede hacer de alguna forma??
gracias amigos  ;-)






En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: ¿Cómo saber cual textbox contiene un string igual a otro?
« Respuesta #1 en: 3 Septiembre 2016, 17:51 pm »

Tienes varias maneras:
Sin que tengas que cambiar nada del programa que usas como ejemplo, es meter las palabras en un array y luego comparar y obtener el índice:

Código
  1. Dim Index as Integer
  2. Dim tmpText(1 To 4) As String
  3. tmpText(1) = Text1.Text
  4. tmpText(2) = Text2.Text
  5. tmpText(3) = Text3.Text
  6. tmpText(4) = Text4.Text
  7. For Index = 1 To 3
  8. If tmpText(4) = tmpText(Index) Then
  9. MsgBox ("Texto: " & Index & " está repetido" _
  10. & vbCrLf & "Palabra: " & tmpText(Index))
  11. End If
  12. Next Index



Otra forma  es crear una Matriz de controles, que consiste en crear un control y llamarlo txtPalabra, por ejemplo y en Propiedades del control establecer en la propiedad Index, el valor 0, después copia el control en el formulario y pega de nuevo, automáticamente se crea otro control idéntico con el Index=1, si copias y pegas otro tendrá Index=2....

También puedes copiar y pegar directamente y VB te preguntará si deseas crear una matriz de controles le dices que sí y listo, cada vez que lo copies y pegues se irá añadiendo un índice.

Luego para comparar haces lo siguiente:

Código
  1. Dim Index as Integer
  2. For Index = 0 To 2
  3. If txtPalabra(3).Text = txtPalabra(Index).Text Then
  4. MsgBox ("Texto: " & Index & " está repetido" _
  5. & vbCrLf & "Palabra: " & txtPalabra(Index))
  6. End If
  7. Next Index

El primer control de texto en este caso tiene el Indice = 0
txtPalabra(0)
txtPalabra(1)
txtPalabra(2)
txtPalabra(3)

txtPalabra(3)  sería el cuarto.



En línea

rapbyone

Desconectado Desconectado

Mensajes: 173


Ver Perfil
Re: ¿Cómo saber cual textbox contiene un string igual a otro?
« Respuesta #2 en: 3 Septiembre 2016, 17:59 pm »

Tienes varias maneras:
Sin que tengas que cambiar nada del programa que usas como ejemplo, es meter las palabras en un array y luego comparar y obtener el índice:

Código
  1. Dim Index as Integer
  2. Dim tmpText(1 To 4) As String
  3. tmpText(1) = Text1.Text
  4. tmpText(2) = Text2.Text
  5. tmpText(3) = Text3.Text
  6. tmpText(4) = Text4.Text
  7. For Index = 1 To 3
  8. If tmpText(4) = tmpText(Index) Then
  9. MsgBox ("Texto: " & Index & " está repetido" _
  10. & vbCrLf & "Palabra: " & tmpText(Index))
  11. End If
  12. Next Index



Otra forma  es crear una Matriz de controles, que consiste en crear un control y llamarlo txtPalabra, por ejemplo y en Propiedades del control establecer en la propiedad Index, el valor 0, después copia el control en el formulario y pega de nuevo, automáticamente se crea otro control idéntico con el Index=1, si copias y pegas otro tendrá Index=2....

También puedes copiar y pegar directamente y VB te preguntará si deseas crear una matriz de controles le dices que sí y listo, cada vez que lo copies y pegues se irá añadiendo un índice.

Luego para comparar haces lo siguiente:

Código
  1. Dim Index as Integer
  2. For Index = 0 To 2
  3. If txtPalabra(3).Text = txtPalabra(Index).Text Then
  4. MsgBox ("Texto: " & Index & " está repetido" _
  5. & vbCrLf & "Palabra: " & txtPalabra(Index))
  6. End If
  7. Next Index

El primer control de texto en este caso tiene el Indice = 0
txtPalabra(0)
txtPalabra(1)
txtPalabra(2)
txtPalabra(3)

txtPalabra(3)  sería el cuarto.



Perfecto amigo, manos a la obra
muchas gracias amigo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
tomar de un textbox, cambiar y pegar en otro textbox
Programación Visual Basic
Nakp 9 5,457 Último mensaje 2 Septiembre 2006, 18:42 pm
por Nakp
[Solucionado] Comparar un String con cada una de las partes de otro String « 1 2 »
.NET (C#, VB.NET, ASP)
Segurida 13 12,520 Último mensaje 14 Mayo 2011, 18:52 pm
por Segurida
Como hacer que al escrinbir en un textbox en otro salga otro texto
.NET (C#, VB.NET, ASP)
Alexperto 9 6,729 Último mensaje 15 Julio 2013, 21:32 pm
por Eleкtro
¿Si textbox contiene?
Programación Visual Basic
Brian1511 2 2,328 Último mensaje 15 Enero 2014, 03:10 am
por Brian1511
No me aparece el String en JTextField aunque si lo contiene « 1 2 »
Java
NaTxosS 10 7,270 Último mensaje 30 Noviembre 2014, 11:22 am
por NaTxosS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines