Eu não conheço nenhuma função ou procedimento que retorne esses dados. Mas você pode armazenar em uma TStringGrid as propriedades padrão de cada componente e fazer uma função boleana que retorne se para aquele componente existe ou não a propriedade na lista de propriedades.
Grid Classe | Prop1 | Prop2 |Prop3 TButton | OnClick | OnMouseMove | Enabled TEdit | OnChange | OnEnter | Enabled function TForm1.hasProperty(Classe, Propriedade: String): Boolean; var Linha, Coluna: Integer; begin Result:=False; For Linha:=1 to sg1.RowCount-1 do begin if sg1.Cells[0, Linha]=Classe then begin for Coluna:=1 to sg1.ColCount-1 do begin if sg1.Cells[Coluna, Linha]=Propriedade then begin Result:=True; Break; end; end; end; end; end; Aí para chamar: if hasProperty(Classe, Propriedade) then messagedlg('A Propriedade '+Propriedade+' existe em '+Classe,mtinformation,[mbok],0) else messagedlg('A Propriedade '+Propriedade+' NÃO existe em '+Classe,mterror,[mbok],0) Não é eficiente mas ajuda um pouco já. Alisson Ricardo VIol Gazda ----- Original Message ----- From: Carlos Eduardo L. de Souza To: delphi-br@yahoogrupos.com.br Sent: Thursday, August 25, 2005 2:41 PM Subject: [delphi-br] componente tem propriedade? Tarde! Alguém sabe: Eu preciso descobrir se um determinado componente tem uma propriedade ou um método ou evento. Mais ou menos assim: for i:= 0 to ComponentCount - 1 do begin if Components[i].hasProperty('Enabled') then //isto não existe... Components[i].Enabled := False; //essa linha também vai dar erro sem um cast... //preciso também saber: if Components[i].hasEvent('OnClick') then Components[i].OnClick := OnClickPersonalizado; end Qualquer idéia é bem vinda... tks Eduardo -- <<<<< 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] Yahoo! Grupos, um serviço oferecido por: ------------------------------------------------------------------------------ Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [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] 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