Ver Mensaje Individual
  #2  
Antiguo 07-09-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Agregar un control es tan sencillo como crear una nueva instancia del control que te interesa y establecer sus propiedades relevantes.

Por ejemplo, con un botón seria algo como:
(un ejemplo dice mas que mil palabras)
Código Delphi [-]
Procedure TForm1.BotonNuevo;

Var
  bt : TButton;

Begin
  bt := TButton.Create(self);
  bt.parent := Panel1;
  inc(FContadorBotones);
  bt.name := 'boton' + IntToStr(FContadorBotones);
  bt.caption := 'pinchame!';
  bt.left := 10;
  bt.top := 20 * (FContadorBotones - 1);
  bt.onClic := TForm1.BotonClick;
end;

El parent es el "contenedor" en donde aparecera el botón. Me he cuidado de asignar un nombre único al botón, que en este caso, disparará el procedimiento TForm1.BotonClick en su evento OnClick. En este caso la definición BotonClick tiene que coincidir con la de TNotifyEvent. Es decir, recibir un parámetro de tipo TObject y pertenecer a una clase.

Luego, la posición, y listo!.

Cita:
cuantos controles puede soportar un contenedor de estos
NO creo que haya un límite teórico muy bajo en delphi, pues todo es manejado en memoria dinámica. Te limitan la memoria de tu equipo, y los recursos del sistema.

Por si las dudas, el indice de la propiedad controls es de tipo Integer, con lo que el límite teórico impuesto por este es de 2,147,483,647 controles. Te aseguro que tu windows morirá mucho antes de esto..
Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate

Última edición por jachguate fecha: 07-09-2004 a las 07:50:37.
Responder Con Cita