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


  Mostrar Mensajes
Páginas: [1]
1  Programación / .NET (C#, VB.NET, ASP) / AYUDA Agilizar y reducir código. VB.NET Framework 4.5 en: 2 Mayo 2014, 18:53 pm
Hola, buenas a todos. Soy nuevo en el foro. Creo que me duda será fácil de resolver para muchos, pero yo como soy nuevo en esto del VB no consigo sacar la solución.  :huh:

La cuestión es que al iniciar un Form lleno de botones, necesito que se habiliten tantos botones como marque una variable definida en el anterior Form.

Bueno pues con la ayuda de mis escasos conocimientos he pensado en escribir esto:

Código:
Module Module1
    Dim botones As Integer
End Module

Public Class Form
    Private Sub Form_Load(sender As Object, e As EventArgs) Handles Me.Load
        'La variable botones tiene el valor que se le ha dado en el Form que llama a este otro Form.
        While botones <> 0
            If botones = 1 Then Button1.Enabled = True
            If botones = 2 Then Button2.Enabled = True
            If botones = 3 Then Button3.Enabled = True
            If botones = 4 Then Button4.Enabled = True
            If botones = 5 Then Button5.Enabled = True
            If botones = 6 Then Button6.Enabled = True
            'etcétera, etcétera...
            botones = Val(botones) - 1
        End While
    End Sub
End Class

Pero sería agotador tener que escribir tantas condiciones IF...ELSE como botones así que lo que os pido es una alternativa parecida a esto que he intentado yo, sin éxito, jajaja:

Código:
Private Sub Form_Load(sender As Object, e As EventArgs) Handles Me.Load
        'La variable botones tiene el valor que se le ha dado en el Form que llama a este otro Form.
        While botones <> 0
            Dim objetoboton As Object
            objetoboton = "Button" & botones
            objetoboton.Enable = True
            botones = Val(botones) - 1
        End While
    End Sub

Supongo que esto ultimo será un disparate, o algo así, pero no se me ocurre nada mejor. Jajaja  ;D

Si me podéis ayudar os lo agradecería mucho. Y si no os ha quedado claro preguntad y os lo intento explicar mejor.  :-\  
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines