Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

Ayuda "Visual Basic"

bunburetto

Bovino de alcurnia
Desde
11 Nov 2008
Mensajes
2.484
Hola hermanos bakunos... primero que nada... les envio un gran saludooo...

Soy novato en programacion ... tengo un problemita en VB.

Tengo una ventana principal que contiene los campos: Matricula y Nickname.
Un group box con las opciones en radiobuttons; Identificacion, Localizacion y Seguridad.
Y un boton que se llama Cargar forma.

thump_5868626principal.jpg


Ya puedo vincular mis en radiobuttons a otras ventanas (formas) sin ningun problema.
Pero la situacion es la siguiente:

Quiero que mi programa no me vincule a ninguna de las formas si no escribo una matricula, una contraseña y si no elijo una opcion.

Ya hice un codigo que funciona y me dice "Falta matricula, Falta Nickname, Elija una opcion"... en caso de que falte cualquiera de los 3 datos, falten 2 datos o falte 1 dato.

Pero al momento de borrar la contraseña y/o el nickname... el programa si me vincula y no me envia mensaje de error.

Adjunto el codigo.

Dim texto As String = ""

If txtMatricula.TextLength <= 0 Then
texto = (" Falta Matricula ")
End If

If txtNickname.TextLength <= 0 Then
texto = texto & (" Falta Nickname ")
End If


Inician los radiobuttons

If rbIdentificacion.Checked = True Then
frmIdentificacion.Show()
ElseIf rbLocalizacion.Checked = True Then
frmLocalizacion.Show()
ElseIf rbSeguridad.Checked = True Then
frmSeguridad.Show()
Else
MessageBox.Show(texto & "Seleccione una opcion")
End If


Espero que me puedan ayudar. Muchas gracias hermanos.:vientos:
 
ps io no c muxo de programacion y menos en visual basic solo lleve C# y la verdad hasta la fecha no se con exactitud como pase la materia ni como hice las aplicaciones k nos pedian >.<

Segun entendi al momento de borrar alguno de los campos ya no hace la validacion...
creo k la respuesta esta en poner TODO ese codigo en un ciclo, ( un While o Do While) para k se repita y valide cada k se limpian los campos...

eso es lo unico k se me ocurre...( recuerda k soy un asco programando xD )
saludos!!
 
hola, no se nada de visual basic, pero analizando un poquitin el codigo no sera por el <= de los length de tus campos, en lugar de que sea menor o igual a 0 que sea estrictamente menor que 0.

Ojala sea eso.
 
Intenta algo como esto:

Código:
        If TextBox1.Text.Trim = "" Then
            MsgBox("Escribe algo, no te hagas buey")
            Exit Sub
        End If

        MsgBox("Te voy a dejar pasar")

Saludos,
http://chico-ch.com
 
lo que podrias usar tambien serian banderas en falso y verdadero asi cuando mandes borrar los datos vuelves a poner las banderas en falso y asi aunado a una condicion if <sentencia> and <sentencia> junto con las banderas se hace lo que tu quieres que a fuerzas esten los tres campos es decir band1 = true, band2=true y band3=true si alguna de ellas no estuviera activada no podria vincular
 
usa el evento validate

Hola usa el evento validate en la captura de tus text.

Ejemplo:

Private Sub txtNombre_Validate(Cancel As Boolean)
Cancel = ValidaNombre
End Sub

Private Function ValidaNombre() As Boolean
If len(txtNombre.Text) = 0 Then
MsgBox "El nombre es requerido", vbInformation, "Validando"
txtNombre.SetFocus
ValidaNombre = True
End If
End Function

y si el boton tiene la propiedad default=true vuelve a validar antes de seguir con el proceso.
ejemplo:

if validanombre then exit sub
 
Prueba con el siguiente código:
Código:
        Dim texto As String = ""

        If txtMatricula.TextLength <= 0 Then
            texto = (" Falta Matricula ")
        End If

        If txtNickname.TextLength <= 0 Then
            texto = texto & (" Falta Nickname ")
        End If

        If texto = "" And rbIdentificacion.Checked = True Then
            frmIdentificacion.Show()
        ElseIf texto = "" And rbLocalizacion.Checked = True Then
            frmLocalizacion.Show()
        ElseIf texto = "" And rbSeguridad.Checked = True Then
            frmSeguridad.Show()
        Else
            MessageBox.Show(texto & "Seleccione una opcion")
        End If
 
Volver
Arriba