Título: AYUDA Agilizar y reducir código. VB.NET Framework 4.5 Publicado por: Torvic98 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. :-\ Título: Re: AYUDA Agilizar y reducir código. VB.NET Framework 4.5 Publicado por: El Benjo en 3 Mayo 2014, 00:10 am Puedes hacerlo mediante la colección de controles del Form. Es decir con "Me.Controls". Y compruebas si el control actual es un botton y si cumple otros requisistos que quieras comprobar. Te recomiendo que hagas esto sólo si son muchos botones. si no es así, continúa haciéndolo como lo tienes ahora.
Saludos. Título: Re: AYUDA Agilizar y reducir código. VB.NET Framework 4.5 Publicado por: Eleкtro en 3 Mayo 2014, 02:51 am Una manera simple:
Código
...Utilizando este método de uso genérico, el cual no he optimizado muy bien y habrá formas más limpias de escribirlo, pero sirve. Código
Saludos |