Vectores Objeto ("Matrices de objetos") ViB vs Delphi
Holas a todos...
Tengo una problema en delphi 5 ... os explico.
En Visual Basic para crear un vector o "matriz" de objetos basta con copiar el objeto y al pegarlo te pregunta si kieres k sea una matriz "label1(x)" o un objeto nuevo.
Mi problema es que en delphi no hace eso, o no se como hacerlo, la unica manera que encontre para manejar varios objetos como si fueran matriz es....
----------------------------------------
var comp:tcomponent;
cont:=componentcount -2;
for i:=cont downto 0 do
begin
comp:=components[i];
if (comp is TQRlabel) then
(comp as TQRLabel).caption:='XXXXX';
end;
---------------------------------------------
Por eso keria saber si se pueden crear objetos matriz como en visual Basic o no se puede, y en caso afirmativo ... ¿como?. Muchas gracias.
Tengo una problema en delphi 5 ... os explico.
En Visual Basic para crear un vector o "matriz" de objetos basta con copiar el objeto y al pegarlo te pregunta si kieres k sea una matriz "label1(x)" o un objeto nuevo.
Mi problema es que en delphi no hace eso, o no se como hacerlo, la unica manera que encontre para manejar varios objetos como si fueran matriz es....
----------------------------------------
var comp:tcomponent;
cont:=componentcount -2;
for i:=cont downto 0 do
begin
comp:=components[i];
if (comp is TQRlabel) then
(comp as TQRLabel).caption:='XXXXX';
end;
---------------------------------------------
Por eso keria saber si se pueden crear objetos matriz como en visual Basic o no se puede, y en caso afirmativo ... ¿como?. Muchas gracias.
Hola
Es posible manejar arreglos de componentes en delphi, pero en tiempo de ejecución (usando código) no en diseño.
Por ejemplo este código crea un array de edits
procedure TForm1.FormCreate(Sender: TObject);
Var ArrayEdit:Array [1..5] of TEdit;
X:Integer;
begin
For X:=1 To 5 Do
begin
ArrayEdit[X]:=TEdit.Create(Self);
ArrayEdit[X].Parent:=Self;
ArrayEdit[X].Top:=X*25;
ArrayEdit[X].Name:='Edit'+IntToStr(X);
end;
end;
Si quieres manipular el array en otras partes de la unidad, coloca la declaración del mismo en la sección private o public de la unidad.
Saludos
Roger Ruiz
IMACO SC
Cancun, México
Es posible manejar arreglos de componentes en delphi, pero en tiempo de ejecución (usando código) no en diseño.
Por ejemplo este código crea un array de edits
procedure TForm1.FormCreate(Sender: TObject);
Var ArrayEdit:Array [1..5] of TEdit;
X:Integer;
begin
For X:=1 To 5 Do
begin
ArrayEdit[X]:=TEdit.Create(Self);
ArrayEdit[X].Parent:=Self;
ArrayEdit[X].Top:=X*25;
ArrayEdit[X].Name:='Edit'+IntToStr(X);
end;
end;
Si quieres manipular el array en otras partes de la unidad, coloca la declaración del mismo en la sección private o public de la unidad.
Saludos
Roger Ruiz
IMACO SC
Cancun, México