Sem querer causar controvérsias, gostaria de comentar sobre

   if (o is TEdit) then
     e := o as TEdit;

O objetivo do operador "AS" é fazer um typecast com uma verificação de 
tipo antes. Esse operador gera uma exceção caso os tipos do cast não 
sejam compatíveis. Se você já verificou que os tipos são compatíveis e 
usa o "AS" você acaba verificando a compatibilidade de tipos DUAS vezes 
desnecessariamente. Então, o melhor seria

   if (o is TEdit) then
     e := TEdit(o);

ou, caso você deseje que a exceção chegue até você

   e := (o as TEdit);


Cordialmente,

Demian Lessa
Salvador - Brasil

Gustavo Fujita wrote:
> Filipe,
> 
> Claro que é possível fazer esse tipo de TypeCast no Delphi. Ficaria, de uma
> maneira elegante, assim:
> 
> var
>   o: TObject;
>   e: TEdit;
> begin
>   o := objectLista[0];
>   if (o is TEdit) then
>     e := o as TEdit;
> end;
> 
> 
> Gustavo Fujita


-- 
<<<<< 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] ou [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