Visual Basic.NET - Variable de control asignado a varios textbox

 
Vista:
sin imagen de perfil

Variable de control asignado a varios textbox

Publicado por luis (3 intervenciones) el 15/11/2014 00:03:10
Hola Programadores, me podrian dar una mano con los textbox?.. estoy haciendo un formulario en donde tiene 12 textbox, a cada textbox tiene una letra, ahora en otro textbox (txtletra) ingreso una letra y quiero que despues de darle click al boton (BTNINGRESARLETRA) pregunte si coincide con alguno de los 12 textbox ... ahora para hacer el recorrido, se puede agrupar los 12 textbox en una variable que sirva de bucle?..


Private Sub BTNINGRESARLETRA_Click ()
Dim LETR As String
Dim I As Integer 'esta variable seria para el for comun
Dim J As Integer ' a esta variable quiero que recorra los 12 textbox


LETR = TXTLETRA.Text()


For I = 65 To 90
If LETR = (Chr(I)) Then

MsgBox("la letra ke ingreso es " & Chr(I))

for J = '**** aca nose que poner, creo que deberia asinar arriba los 12 textbox****

End If
Next I
end sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Variable de control asignado a varios textbox

Publicado por Miguel (476 intervenciones) el 15/11/2014 00:47:58
Hola, como son doce textBox, creo que es más sencillo pasar textBox por textBox verificando si coinciden con valor de tu textbox (TEXTLETRA); para no complicarte con los bucles.

Si no es la respuesta que eperabas, explícame mejor lo que deseas hacer...

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Variable de control asignado a varios textbox

Publicado por luis (3 intervenciones) el 15/11/2014 04:00:50
Hola Miguel, gracias por responder.. justamente hice lo que vos me dijiste de preguntar texbox por texbox .. ahora bien tengo otra pequeña inquietud con los if, else, elseif ... el tema es que estoy intentando hacer algo parecido al juego del ahorcado ...
el tema con los if es que cuando ingrese la letra (txtletra) y presiona el boton (btningresarletra), quiero que me diga que esa letra no esta en alguno de los 12 textbox... pero me aparece 12 veces el mensaje ("no esta la letra " & chr( i)) ..


Private Sub BTNINGRESARLETRA_Click ()

Dim I As Integer

LETR = TXTLETRA.Text()


For I = 65 To 90

If LETR = (Chr(I)) Then

MsgBox("la LETRA que ingresaste es " & Chr(I))

If TXT1.Text = Chr(I) Then
msgbox("esta letra pertenece")
lbl_acierto1.text=chr(i)
Elseif
TXT1.Text <> Chr(I) Then
MsgBox("no esta la letra " & chr( i))


End If

If TXT2.Text = Chr(I) Then
msgbox("esta letra pertenece")
lbl_acierto2.text=chr(i)
Elseif
TXT2.Text <> Chr(I) Then
MsgBox("no esta la letra " & chr( i))

End If
End If
If TXT3.Text = Chr(I) Then
msgbox("esta letra pertenece")
lbl_acierto3.text=chr(i)
Elseif
TXT3.Text <> Chr(I) Then
MsgBox("no esta la letra " & chr( i))

End If
End If
....
.....
....
.... ' y asi hasta llegar al ultimo textbox me aparece el mensaje qe no esta la letra tal ... incluso aparece cuando la letra que ingreso pertenece a la palabra del ahorcado, pero igual ubica en el label que pertenece....
next i
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Variable de control asignado a varios textbox

Publicado por Miguel (476 intervenciones) el 15/11/2014 17:04:39
Bueno, tienes que eliminar los "elseif" de las consultas excepto del último textBox (TXT12), y luego de verificar que acertó, terminar la función con "exit sub":

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
If TXT1.Text = Chr(I) Then
   msgbox("esta letra pertenece")
   lbl_acierto1.text=chr(i)
   Exit Sub 'Como acertó, terminar la función. En caso contrario continuar hasta verificar todos.
End If
 
' Lo anterior hasta el TXT11, luego ------------------------->
 
If TXT12.Text = Chr(I) Then
   msgbox("esta letra pertenece")
   lbl_acierto2.text=chr(i)
   Exit Sub 'Como acertó, terminar la función. Como es el último si usar el "else" para enviar el mensaje...
Elseif
   TXT12.Text <> Chr(I) Then
   MsgBox("no esta la letra " & chr( i)) 'Como no acertó, enviar el mensaje respectivo.
End If


Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Variable de control asignado a varios textbox

Publicado por luis (3 intervenciones) el 15/11/2014 21:11:23
gracias otra vez.. pero el cuando escribi el codigo para que me salga el mensaje de "no esta la letra " & chr( i))" .. me hacia bucle de la A hasta la Z, pero despues puse otro codigo mas largo, nose si es debido, pero me quedo asi..




If TXT12.Text = Chr(I) Then
msgbox("esta letra pertenece")
lbl_acierto2.text=chr(i)
Exit Sub 'Como acertó, terminar la función. Como es el último si usar el "else" para enviar el mensaje...
Elseif ' y aca empieza preguntando a cada uno con un and.
(TXT1.Text <> Chr(I) And TXT2.Text <> Chr(I) And TXT3.Text <> Chr(I) And
TXT4.Text <> Chr(I) And TXT5.Text <> Chr(I) And TXT6.Text <> Chr(I) And
TXT7.Text <> Chr(I) And TXT8.Text <> Chr(I) And TXT9.Text <> Chr(I) And
TXT10.Text <> Chr(I) And TXT11.Text <> Chr(I) And TXT12.Text <> Chr(I) And TXT13.Text <> Chr(I)) Then

MsgBox("no esta la " & Chr(I))
TXTLETRA.Clear()
TXTLETRA.Focus()

End If


'de todas maneras funciono. gracias por la ayuda miguel..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Variable de control asignado a varios textbox

Publicado por Miguel (476 intervenciones) el 15/11/2014 22:32:19
Me alegra que te haya servido...

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar