Visual Basic - Texbox a Label Visible = True y False

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 55
Ha aumentado su posición en 10 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Texbox a Label Visible = True y False

Publicado por Cristian (19 intervenciones) el 26/05/2021 01:57:43
Hola buenas ; Tengo el Siguiente Problema que pensé que iba a solucionarlo con un simple proceso, lo que no entiendo es por que no me habilita y deshabilta ciertos Nombres de Productos ("Adulto Temporada Alta") : tengo estas Simples Lineas Que son Visible = True y Visible False, el tema que con una coincidencia me funciona perfecto que es la Siguiente

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Sub ConsultarTextLabel()
 
LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text ' Aquí Convierto el Label
If LblNombreRegistarProductos.Caption = "Adulto Temporada Alta" Then LblNombreRegistarProductos.Visible = True ' cuando ES Igual el Texbox Adulto Temporada Alta... es invisible
If Not LblNombreRegistarProductos.Caption = "Adulto Temporada Alta" Then LblNombreRegistarProductos.Visible = False: Exit Sub ' cuando NO es igual ("Adulto Temporada Alta")  .... es visible
 
End Sub
 
Private Sub TxtNombreRegistrarProductos_Change()
 
If TxtNombreRegistrarProductos.Text = "Adulto Temporada Alta" Then TxtNombreRegistrarProductos.Visible = False  ' cuando ES Igual el texbox Adulto... es invisible
If Not TxtNombreRegistrarProductos.Text = "Adulto Temporada Alta" Then TxtNombreRegistrarProductos.Visible = True: Exit Sub ' cuando NO es igual Adulto .... es visible
 
End Sub

Hasta aquí Ningún problema funciona perfecto, pero si agrego 5 Nombres de Productos de 50 que tiene la Bd

" Adulto Temporada Baja" , "Nino Temporada Alta", "Nino Temporada Baja" , "Mascota Temporada Alta", "Mascota Temporada Baja"
Me dá error "no coinciden los Datos"
He probado con Or y And

En resumidas Cuentas
La TexBox es visiblle = False, Cuando se Activan las 6 coincidencias
Y el Label es Visble True, Cuando Se Activan las 6 coincidencias

Y resto de los Productos No debe Aparecer el Label Fijando solo la TextBox

Estoy Utilizando Visual 60
Sql Server 2014

Una Vez Más
Gracias Totales
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: 55
Ha aumentado su posición en 10 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Texbox a Label Visible = True y False

Publicado por Cristian (19 intervenciones) el 26/05/2021 22:07:43
Solución si alguien le pueda servir
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Private Sub TxtNombreRegistrarProductos_Change()
If TxtNombreRegistrarProductos.Text = "Adulto Temporada Alta" Then
        TxtNombreRegistrarProductos.Visible = False
        LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
        LblNombreRegistarProductos.Visible = True
Else
If TxtNombreRegistrarProductos.Text = "Adulto Temporada Baja" Then
        TxtNombreRegistrarProductos.Visible = False
        LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
        LblNombreRegistarProductos.Visible = True
Else
If TxtNombreRegistrarProductos.Text = "Nino Temporada Alta" Then
        TxtNombreRegistrarProductos.Visible = False
        LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
        LblNombreRegistarProductos.Visible = True
Else
If TxtNombreRegistrarProductos.Text = "Nino Temporada Baja" Then
       TxtNombreRegistrarProductos.Visible = False
       LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
       LblNombreRegistarProductos.Visible = True
Else
If TxtNombreRegistrarProductos.Text = "Mascota Temporada Alta" Then
       TxtNombreRegistrarProductos.Visible = False
       LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
       LblNombreRegistarProductos.Visible = True
Else
If TxtNombreRegistrarProductos.Text = "Mascota Temporada Baja" Then
        TxtNombreRegistrarProductos.Visible = False
        LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
        LblNombreRegistarProductos.Visible = True
Else
If TxtNombreRegistrarProductos.Text <> " " Then
        TxtNombreRegistrarProductos.Visible = True
        LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text
        LblNombreRegistarProductos.Visible = False
        End If
                      End If
                   End If
               End If
           End If
       End If
    End If
 End Sub
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: 355
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Texbox a Label Visible = True y False

Publicado por raul (160 intervenciones) el 27/05/2021 15:19:52
Hola Cristian la verdad es que no te he entendido nada de lo que quieres hacer, ni entiendo el codigo.

Veras por ejemplo

1
2
3
4
5
6
7
Sub ConsultarTextLabel()
 
LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text ' Aquí Convierto el Label
If LblNombreRegistarProductos.Caption = "Adulto Temporada Alta" Then LblNombreRegistarProductos.Visible = True ' cuando ES Igual el Texbox Adulto Temporada Alta... es invisible
If Not LblNombreRegistarProductos.Caption = "Adulto Temporada Alta" Then LblNombreRegistarProductos.Visible = False: Exit Sub ' cuando NO es igual ("Adulto Temporada Alta")  .... es visible
 
End Sub

1- Esta es una SUB externa bajo pedido o sea no esta sujeta a evento alguno. Y su invocación debe ser desde un boton etc. Sin embargo tu codificación informa que esta depende de una condición [TxtNombreRegistrarProductos.Text ] o sea que la logica indica que esta debiera estar anidada en los eventos [TxtNombreRegistrarProductos_Change] o [TxtNombreRegistrarProductos_keyup] ... si la entrada fuera manual.
2 ¿Porqué usar 2 condiciones para evaluar la propiedad visible si con decir:
LblNombreRegistarProductos.Visible = iif(LblNombreRegistarProductos.Caption = TxtNombreRegistrarProductos.Text, true, false)

Ahora esta sub

1
2
3
4
5
6
Private Sub TxtNombreRegistrarProductos_Change()
 
If TxtNombreRegistrarProductos.Text = "Adulto Temporada Alta" Then TxtNombreRegistrarProductos.Visible = False  ' cuando ES Igual el texbox Adulto... es invisible
If Not TxtNombreRegistrarProductos.Text = "Adulto Temporada Alta" Then TxtNombreRegistrarProductos.Visible = True: Exit Sub ' cuando NO es igual Adulto .... es visible
 
End Sub

Esta SUB anidada a un evento (que es automatica y es perfecta la pregunta que me hago es ¿como se alimenta el textbox?; veras si es manual esta sub no sirve porque se evalua antes de que el texto cambie completamente.

O sea que no te entiendo.
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