Ver Mensaje Individual
  #9  
Antiguo 03-01-2009
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 31
Lepe Va por buen camino
No sé, pero si no son muchas clases, con los overloads podrías hacerlo, o ya puesto con funciones:
Código Delphi [-]

function tform1.obja(cep:string):Tcomponent;
begin
  result := findcomponent(cep);
end;

function tform1.obja(cep:string):TEdit;
begin
   result := TEdit(findcomponent(cep));
end;

function tform1.obja(cep:string):TOpenDialog;
begin
   result := TOpenDialog(findcomponent(cep));
end;

o hacer una clase que lo englobe todo:
Código Delphi [-]
TBusca = class(TObject)
private
   encontrado:TComponent;
  procedure SetName(Value:String);
public
    ComponentName:string read FName write SetName;
    function AsEdit:TEdit;
    function AsOpenDialog:TOpenDialog;
end

implementation 

procedure TBusca.SetName(Value:string);
begin 
   encontrado := Form1.Findcomponet(value);
end;

function TBusca.AsEdit:TEdit;
begin
   if Assigned(encontrado) then
     result := TEdit(encontrado)
  else
    result := nil;
end;

function TBusca.AsOpenDialog:TOpenDialog;
begin
   if Assigned(encontrado) then
     result := TOpenDialog(encontrado)
  else
    result := nil;
end;
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita