Programación General > Visual Basic 6.0 e inferiores
Instancias De Ctl En Tiempo De Ejecución
(1/1)
Lars82:
Hola,
Estoy creando un control ocx, es decir un ctl porque usaré desde el mismo proyecto desde el que lo creo, y no encuentro la manera de crear un objeto en tiempo de ejecución.
He probado con:
(en General declaraciones)
Dim a() As UserControl1
(en Public sub)
ReDim a(0)
...
set a(0)=new .... -> pero el nombre de mi control no aparece.
y Load a(0) -> da el error típico de Variable de tipo object no establecida
También he intentado algo como:
Set Userctl = Controls.Add("UserControl1", "ventana")
Pero no encuentra un control llamado Usercontrol1.
Cómo lo puedo hacer? Alguna idea?
mil gracias
luciano2:
Hola
No estoy seguro, pero creo que para crearlo en tiempo de ejecución con Controls.add, el control debe estar compilado, registrado en el sistema, y tenés que saber el Id para pasarle como paraémtro al ,Add
Yo lo haria con Load, por ej.
Colocás una instancia en tu form. El mismo tiene que ser parte de un matriz, por eso agregale a la propiedad index, un 0
--- Código: Text --- ' creás unoLoad UserControl11(1) UserControl11(1).Visible = TrueUserControl11(1).Move 0, 0, 1000, 1000 ' otro masLoad UserControl11(2) UserControl11(2).Visible = TrueUserControl11(2).Move 0, 1500, 1000, 1000
saludos
Lars82:
Tenías razón, con un load teniente el control en el form funciona
gracias!
Navegación
Ir a la versión completa