Ver Mensaje Individual
  #5  
Antiguo 25-10-2011
asdbernardo asdbernardo is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 37
Reputación: 0
asdbernardo Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

No entiendo bién a que te referis, pero a ver si puedo explicarme mejor:

La función 'ExisteCtrl' (o el nombre que le des) recorre todos los componentes del form verificando que el componente exista (haya sido creado) y devuelve True si es así. Caso contrario devuelve False.

Como en la creación del TCheckListBox le asignas el nombre de este modo:
Código Delphi [-]
  cajas.Name := combobox1.Text;
Antes de dicha creación deberías verificar:
Código Delphi [-]
 
  if ExisteCtrl(combobox1.Text) then 
  ...

Agregándola a tu código inicial sería:
Código Delphi [-]
procedure TfrmVentas.Button1Click(Sender: TObject);
begin
  if not ExisteCtrl(ComboBox1.Text) then     // si no existe el componente
  begin
    cajas := tchecklistbox.Create(frmventas);  // crearlo
    cajas.Top := 10;
    cajas.Left := 10;
    cajas.Height := 300;
    cajas.Width := 300;
    cajas.Parent := pagecontrol1;
    cajas.Name := combobox1.Text;
    cajas.Items.Add('el nombre es:'+cajas.Name);
    cajas.Items.Add(combobox1.Text);
    cajas.DragKind := dkDock;
    cajas.DragMode := dmAutomatic;
   end
   else  // el componente existe,
          // aquí la accion que decidas tomar 
          // o ninguna en cuyo caso sobraría 'else'
end;

Un saludo.

Edito: No había visto tu último comentario:

Si, asi es Bernardo.
Ok amigo Ecfisa gracias de nuevo por tomarte la amabilidad de responderme.. coloque la funcion, pero me muestra undeclared identifiquer? ComponentCount y en Components[i].Name por eso te hice la pregunta ... Saludos voy a chequear a ver...
Responder Con Cita