Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 03-01-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Gustavo.

Una opción más elaborada de manejar los componentes es utilizando TComponenList. Tenés que incluir la unit Contnrs.

Un ejemplo:
Código Delphi [-]
uses ..., Contnrs.
...
 TForm1 = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    Button1: TButton;
    Memo1: TMemo;
    Button2: TButton;
    procedure FormShow(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    FCmpList: TComponentList;
    function ObtenerComponentes(const ParentName: string): TComponentList;
  public
  end;

....

{ Devuelve Lista de componentes con un determinado Parent }
function TForm1.ObtenerComponentes(const ParentName: string): TComponentList;
var
  i: Integer;
begin
  Result:= TComponentList.Create;
  for i:= ComponentCount - 1 downto 0 do
   if Components[i].GetParentComponent.Name = ParentName then
    Result.Add(Components[i])
end;

{ Cargar Lista }
procedure TForm1.FormShow(Sender: TObject);
begin
  FCmpList:= TComponentList.Create(True);
  FCmpList:= ObtenerComponentes('Panel1');
end;

{ Hacer algunas operaciones sobre la lista }
procedure TForm1.Button2Click(Sender: TObject);
var
  i: Integer;
begin
  // desactivar los controles de Panel1
  for i:= 0 to FCmpList.Count -1 do
    (FCmpList.Items[i] as TControl).Enabled:= False;
  // activar Label1
  (FCmpList.Items[FCmpList.IndexOf(Label1)] as TControl).Enabled:= True;
  // Borrar un elemento
  FCmpList.Items[FCmpList.IndexOf(Memo1)].Free;
end;
...

{ Liberar lista }
procedure TForm1.FormDestroy(Sender: TObject);
begin
  FCmpList.Free;
end;


Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Panel y scrollbar EITB OOP 3 16-02-2011 06:23:03
Insertar un Panel dentro de otro panel edgwin OOP 3 22-11-2008 17:22:16
No funcionan componentes TSelectOnRuntime cuando estan controles dentro de un panel gulder API de Windows 6 11-08-2006 09:58:50
Panel Tranpsarente Descendents OOP 4 21-11-2004 16:33:35
Un panel transparente yusnerqui Varios 2 23-03-2004 16:33:32


La franja horaria es GMT +2. Ahora son las 23:03:27.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi