Problema de VB: generar controles dinámicamente
Si desea agregar controles dinámicamente, debe colocar los controles en el formulario durante la etapa de diseño, pero puede establecer la propiedad Visible en Falso y la propiedad Índice del control en 0 (es decir, configúrelo en una serie de controles). Luego use el método Load para agregar el control en tiempo de ejecución. Como el siguiente código:
Private Sub btnAdd_Click()
Static n As Integer
If n lt 0 Then Load Label1(n)
Etiqueta1(n).Mover 300, 200 n *500
Etiqueta1(n).Visible = Verdadero
n = n 1
End Sub
Este código significa que se agrega un control Etiqueta cada vez que el usuario presiona el botón.
Utilice Descargar para eliminar dinámicamente controles en la matriz de controles.
En VB 6.0, su deseo puede hacerse realidad porque la colección Form.Controls incluye el método Agregar y el método Eliminar. Por ejemplo:
Opción explícita
Private WithEvents btnObj As CommandButton
Private Sub btnObj_Click()
MsgBox "Este es un archivo agregado dinámicamente botón "
End Sub
Private Sub Form_Load()
Establecer btnObj = Controls.Add("VB.CommandButton", "btnObj")
Con btnObj
.Visible = True
.Width = 2000
.Caption = "Hola"
. Top = 1000
.Left = 1000
End With
End Sub
Aquí, use WithEvent para especificar el evento de forma dinámica control añadido.