Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo cargar controles en VB? Si sabes cómo, entra y echa un vistazo.

¿Cómo cargar controles en VB? Si sabes cómo, entra y echa un vistazo.

¡Hola!

El código implementado y las anotaciones son las siguientes:

1. Crear un nuevo formulario Form1;

2. FORM1 Coloque un botón (Comando), su nombre es "botón" como usted dijo (de hecho, un buen hábito es nombrar el control en inglés); establezca la propiedad Índice en 0;

3. El código es el siguiente:

Atenuar oControl como objeto 'Variable a nivel de formulario

Subbotón privado_Click(Índice como entero)

Atenuar I como entero

Establecer oControl = Controls.Add("VB.label", "Label1")'Generar un control con etiqueta Etiqueta1

oControl.Left = 100

oControl.Top = 100

oControl.Caption = "Lanel1"

oControl.Visible = True 'Hacer visible el control

Para I = 1 a 3' Genera 3 botones

Botón Cargar(I)

Botón(I).Caption = Botón(0).Caption amp Trim$(Str(I))

Botón (I).Izquierda = Botón(0).Botón Izquierdo

(I).Arriba = Botón(0).Alto BotónArriba * I

Botón (I). ).Visible = True

Siguiente I

End Sub

¡Te deseo éxito!

Respuesta complementaria a la pregunta:

Lo anterior es la sintaxis estándar de VB6.0, pero aunque este método realiza la carga dinámica de controles, los botones se muestran en el formulario y se puede mostrar como si el botón se presionara de la misma manera, pero el control cargado no se puede prediseñar para responder al código del evento. Por ejemplo, el evento Sub MyButton_Click () será ilegal. se puede encapsular dentro del control. Desde el punto de vista de la programación, este método es de poca utilidad. El propósito de desarrollar controles ActiveX es compartir recursos y ser utilizados por otros desarrolladores, por lo que se deben proporcionar las interfaces de eventos necesarias. Obviamente, este método no se puede utilizar mediante el análisis de VBControls. Espere a que aparezcan objetos relacionados y descubra que el objeto VBControlExtender combinado con EventInfo puede proporcionar captura de captura de eventos. El objeto VBControlExtender es particularmente útil para agregar controles dinámicamente. Proporciona un conjunto de propiedades, métodos y eventos comunes a los desarrolladores. Las características son Los amigos que pueden diseñar eventos de control mediante programación estarán familiarizados con las declaraciones de objetos con eventos:

Dim WithEvents objElemt as CElemtVBControlExtender no es una excepción. La sintaxis de declaración es la misma, pero tiene un evento especial ObjectEvent (. Info As EventInfo) puede capturar todos los eventos generados por el objeto usando RaiseEvent. La estructura de datos EventInfo asigna el nombre del evento, el número de parámetros y el valor de los parámetros. Combinando VBControlExtender y EventInfo, usando Select Case, los eventos de diferentes tipos de objetos se pueden colocar juntos de antemano y operar de forma independiente.

Vuelva a escribir el código anterior para proporcionar el evento Click:

Dim WithEvents oControl As VBControlExtender 'Después de declarar la declaración del evento, puede encontrar el objeto que aparece en el cuadro desplegable de objetos en la esquina superior izquierda del código. ventana, es decir, el objeto tiene eventos o métodos. Sus eventos incluyen DragDrop, DragOver, LostFocus, GotFocus, ObjectEvent y Validate, entre los cuales ObjectEvent es una captura de eventos universal.

Sub LoadControl privado()

Establecer oControl = Controls.Add

("VB. CommandButton", "MyButton")

oControl.Visible = True

End Sub

Private Sub oControl_ObjectEvent(Info As EventInfo)

Seleccionar información de caso.Nombre

Caso " Click" 'Evento Click

'Puedes agregar código para manejar el evento Click

MsgBox "¡Presionaste MyButton!"

Case Else 'Otros eventos

' Maneja eventos desconocidos aquí.

End Select

End Sub