Ir para conteúdo
Fórum Script Brasil
  • 0

Os Operadores "is" E "as"


sponte

Pergunta

1 resposta a esta questão

Posts Recomendados

  • 0

você utiliza o "Is" para testar se uma determinada instância de objeto é da classe do objeto que você procura.

você utiliza o "As" para tratar uma determinada instância de objeto como se "fosse outra" é praticamente um type-cast.

Um exemplo e uso comum é quando você trabalha com o parâmetro Sender passado nos eventos. Vamos supor que seja o evento OnEnter. Há vários componentes que respondem a este evento e, se houver algum tipo de procedimento a ser realizado com vários deles, podemos utilizar um único procedimento para ser atribuido ao evento OnEnter de todos eles. Nesta situação, utilizando "Is" e "As" podemos tratar corretamente o evento para o tipo do componente que o responderá.

ex.:

procedure TForm1.Edit1Enter(Sender :TObject);
begin
  if Sender IS TEdit then
  begin
    (Sender AS TEdit).Color := clBLue;
  end else
  if Sender IS TDBGrid then
  begin
    with Sender AS TDBGrid do
      Color := clRed;
  end else
  if Sender IS TDBEdit then
    with Sender AS TDBEdit do
    begin
      Color := clGreen;
      Font.Style := [fsBold];
    end;
end;

Acho que é isto.

[]s

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...