Pseudocodigo, pero creo que se entiende el método:
Código Delphi
[-]
Form1 = class(Tform)
private
Lista:TobjectList;
procedure Form1 Oncreate;
begin
if not Assigned(Lista) then
Lista := TobjectList.Create(true);
end;
Procedure form1 OnClose;
begin
if assigned(Lista) then
freeandnil(Lista);
end;
Procedure Form1Button1Click();
var ord :TOrdenador
i:integer;
begin
for i:=0 to 5 do begin
ord := Tordenador.Create;
ord.IP := '192.168.2.' + inttostr(i);
Lista.Add(ord);
end;
end;
Listo, ya tenemos 6 ordenadores creados dentro del TObjectList. Para acceder al segundo ordenador usaríamos:
Código Delphi
[-]
var miIP :String;
begin
if Assigned(lista) and
(Lista.Count > 2) then
begin
miIP := Tordenador(Lista.items[1]).Ip;
memo1.lines.Assign(Tordenador(Lista[items[1]).Recursos);
end;
end;
¿Ves algo raro? es la forma de trabajar en delphi con todas las instancias de objetos.
Un saludo.