Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   tobjectlist (https://www.clubdelphi.com/foros/showthread.php?t=77219)

DarkBlue 04-01-2012 05:34:28

tobjectlist
 
intento usar tobjectlist, pero no puedo es por que uso delphi 7? estoy dejando de hacer uso a alguna unidad en la lista, entonces existe una alternativa a esto como algun arreglo del tipo de objeto que necesite?.

tengo una duda extra necesito crear varios objetos dinamicamente por lo tanto me imagine un código algo asi:


Código Delphi [-]

procedure ejemplo;
var arreglo:array [1..3] of Tmiclase
begin

arreglo[1]:= Tmiclase.create; //aquí esta mi duda como no puedo saber cuantas variables de 
//referencia necesitare hago un arreglo, la duda es que si es necesario tener diferentes //variables de referencia o con el arreglo basta para acceder a los diferentes objetos


 //y despues poder hacer algo así como

arreglo[1].nombre:='nombre'; //asignar un nombre a la propiedad de mi objeto1
valorstring:=arreglo[1].lista1.strings[1];//obtener un valor d la propiedad de mi objeto
end;



mucha suerte y gracias

Casimiro Notevi 04-01-2012 11:24:42

Hola, recuerda poner títulos descriptivos a tus preguntas, gracias por tu colaboración.

ecfisa 04-01-2012 15:27:31

Hola DarkBlue.

Cita:

Empezado por DarkBlue (Mensaje 422337)
intento usar tobjectlist, pero no puedo es por que uso delphi 7?

No puede ser por eso. Seguramente te falte incluir la unidad Contnrs.

Te pongo un ejemplo muy simple:
Código Delphi [-]
...
implementation

uses Contnrs;

var
  ObjLst: TObjectList;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ObjLst:= TObjectList.Create;
end;

procedure TForm1.btnCrearClick(Sender: TObject);
var
  i: Integer;
  CheckBox: TCheckBox;
begin
  for i:= 1 to 10 do
  begin
    CheckBox:= TCheckBox.Create(Self);
    with CheckBox  do
    begin
      Left  := 20;
      Top   := i * 30 + 20;
      Name  := 'CheckBox'+IntToStr(i);
      Parent:= Self
    end;
    ObjLst.Add(CheckBox)
  end;
end;

...

procedure TForm1.FormDestroy(Sender: TObject);
begin
  ObjLst.Free
end;

Un saludo.


La franja horaria es GMT +2. Ahora son las 22:18:51.

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