Visual Basic Foro
Programación => Visual Basic .NET / C# => Mensaje iniciado por: Bazooka en Mayo 03, 2015, 09:07:00 am
-
Hola amigos, que bajon!!
Quiero comenzar a migrar un proyecto sencillo que tengo en VB6 a .NET (VB 2010) y este basicamente es un tablero de 90 botones que los creaba de esta manera
For Col = 1 To 9
For F = 1 To 10
Load boton(c + F)
boton.visible = True
Next
Next
Y ahora veo que no existen las matrizes de control ..... >:(
Se supone que en NET tengo que crear todo en tiempo de diseño ?
-
Si se puede amigo aca un ejemplo:
http://www.lawebdelprogramador.com/foros/Visual-Basic.NET/921443-MATRIZ-DE-CONTROLES-EN-VISUAL-BASIC-NET.html (http://www.lawebdelprogramador.com/foros/Visual-Basic.NET/921443-MATRIZ-DE-CONTROLES-EN-VISUAL-BASIC-NET.html)
Yo lo tengo en un proyecto que habia hecho llego en casa y te lo paso, pero es la misma cosa como el ejemplo del link que te pase
-
Buenisimo !! Lo veo luego! Como no te deja ponerle el mismo nombre.
-
El ejemplo que me pasaste funciona correctamente pero no tengo control en donde se crean los controles por que siempre se crean sobre el formulario y si yo los quiero colocar por ejemplo dentro de un Contenedor ??
Public Class Arreglos
Dim strJugadores() As String
Dim intTop As Integer = 20
Dim oLabel() As Label
Private Sub labelDinamico(ByVal intIndice As Integer)
oLabel(intIndice) = New Label 'AQUI INSTANCIO POR EL INDICE
oLabel(intIndice).Location = New Point(10, intTop)
oLabel(intIndice).Text = strJugadores(intIndice)
Me.Controls.Add(oLabel(intIndice))
intTop += 30
AddHandler oLabel(intIndice).Click, AddressOf Evento 'ESTO LO PUEDES QUITAR, PERO ASI SE AGREGA EL EVENTO
End Sub
Private Sub Arreglos_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim intTotal As Integer
intTotal = 5 'InputBox("INTRODUCE EL NUMERO DE JUGADORES")
strJugadores = New String(intTotal - 1) {}
oLabel = New Label(intTotal - 1) {} 'AQUI INSTANCIO EL TOTAL DE LABEL QUE HABRAN
For i As Integer = 0 To intTotal - 1
strJugadores(i) = i ' InputBox("Introduce el nombre del jugador " & i + 1)
Next
For j As Integer = 0 To intTotal - 1
labelDinamico(j)
Next
End Sub
'ESTE ES EL EVENTO CLICK PARA TU CONTROL
Private Sub Evento(ByVal sender As System.Object, ByVal e As System.EventArgs)
MsgBox("Haz hecho click en el Label: " & sender.ToString, MsgBoxStyle.Information)
End Sub
End Class
-
proba usar la propiedad .Parent para especificar el control padre cuando.
saludos.