Hola...
Cita:
Empezado por rgstuamigo
uhhhhh Bueno los que hemos trabajado en java o en algun otro lenguaje que los tenga ;un template=plantilla que ayuda a trabajar sobre todo para evitar los casting a cada rato, por decir en el ejemplo de Lepe tiene que hacer una especie de casting para acceder al objeto TImage y al objeto TPanel,y cada vez tendria que hacer lo mismo si quieres acceder a dichos objetos, en cambio con template(Al menos en java)tu creas la lista y le dices por medio de plantillas " Voy a tener una lista digamos de TPanel" (al momento de crearla)entonces la lista esperará solo objetos TPanel y nada mas,y cuando saque de lista me devolvera objetos TPanel,sin necesidad de hacer casting a cada rato; no se si me explico, bueno al menos esto es posible en Java por eso preguntaba si exite en Delphi.
|
Esto lo puedes lograr en
Delphi heredando desde
TObjectList o desde
TList:
Código Delphi
[-]
type
TPanelList = class(TObjectList)
private
function GetPanels(Index: Integer): TPanel;
procedure SetPanels(Value: TPanel; Index: Integer);
public
function Add(APanel: TPanel): Integer;
procedure Delete(APanel: TPanel);
property Panels[Index: Integer]: TPanel read GetPanels write SetPanels;
end;
implementation
function TPanelList.GetPanels(Index: Integer): TPanel;
begin
Result := Items[Index] as TPanel
end;
procedure TPanelList.SetPanels(Value: TPanel; Index: Integer);
begin
Items[Index] := Value
end;
function TPanelList.Add(APanel: TPanel): Integer;
begin
Result := inherited Add(APanel)
end;
procedure TPanelList.Delete(APanel: TPanel);
begin
inherited Delete(APanel)
end;
Con esto puedes tener una lista de
TPanel sin hacer casting a cada rato...
Saludos...