Vc tem que ter uma variável/instância do tipo da Interface, mas tem que dar
um Create com o tipo do Objeto.
Seguindo o código do Elazar, veja:
var
  Intf: IMinhaInterface;
begin
  Intf := TMinhaClasse.Create;
  Intf.Color := clBlue;
  {...}
end;

Vc tb pode definir a variável como um tipo de classe mas utilizar esta mesma
varivel para passar como parâmetro, mas utilizando-a como interface...  Vai
depender do seu problema.

--
Marcos Douglas

---- Mensagem Original ----
From: "Ricardo Lima Mariz" <[EMAIL PROTECTED]>
To: delphi-br@yahoogrupos.com.br
Sent: Seg, Agosto 28, 2006 12:08 pm
Subject: Re: [delphi-br] Ajuda de vocês, trabalhando com pacotes.

> Certo eu entendi como funiona, o problema é o seguinte, trabalho com pacotes
> vou ter um pacote que vai ter a interface IMinhaInterface, e tenho outros
> pacotes que vão implementar essa interface, agora como eu faço pra acessar um
> Objeto qualquer conhecendo somente a interface que ele implementa.
>
> Exemplo
>
> Tenho a imterface IMinhaInterface, e tenho o objeto MeuObjeto que implementa
> IMinhaInterface.
>
> Agora quero acessar um metodo do MeuOBjeto conhecendo somente
> IMinhaInterface.
>
> Algo do tipo IMinhaInterga(UmObjetoQualquer).MetodoDaInterface;
>
> Entendeu?
>   ----- Original Message -----
>   From: Elazar Dornelles Ceza
>   To: delphi-br@yahoogrupos.com.br
>   Sent: Monday, August 28, 2006 11:49 AM
>   Subject: RES: [delphi-br] Ajuda de vocês, trabalhando com pacotes.
>
>
>   Ricardo
>
>   [***]
>   Pelo que vi acho a melhor opção utilizar interfaces, porem ocorre outro
>   problema.
>
>   Como consigo acessar os metodos/propriedades de um objeto conhecendo
>   somente a inteface que o mesmo implementa.
>   [****]
>
>
>   Voce declara na Interface procedimentos/funções para ajustar/ler as
>   propriedades.
>
>   Ex.
>
>
>   IMinhaInterface = Interface
>       function GetColor : TColor;
>       procedure SetColor( Value : Tcolor);
>       property Color : TColor read GetColor write Setcolor;
>   end;
>
>   TMinhaClasse = class( TInterfacedObject, IMinhaInterface)
>   private
>      FColor : TColor;
>   protected
>   public
>       function GetColor : TColor;
>       procedure SetColor( Value : TColor);
>   end;
>
>   { TMinhaClasse }
>   function TMinhaClasse.GetColor: TColor;
>   begin
>     Result := FColor;
>   end;
>
>   procedure TMinhaClasse.SetColor(Value: Tcolor);
>   begin
>   FColor := Value;
>   end;
>
>
>   Atenc.
>   Elazar;
>
>
>
>   _______________________________________________________
>   Yahoo! Acesso Grátis - Internet rápida e grátis. Instale
>   o discador agora!
>   http://br.acesso.yahoo.com
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>




-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a