Eu descobri uma função que eu acho que é o que eu quero. Mas ainda estou tentando usar. Qualquer progresso eu aviso. A função é:
IsItThere := IsPropertyInCategory('Localizable', TCustomEdit, 'Text'); outra opção: IsItThere := IsPropertyInCategory('Localizable', 'TCustomEdit', 'Text'); Obrigado. A gente chega lá! --- Em delphi-br@yahoogrupos.com.br, "Alisson Ricardo Viol Gazda" <[EMAIL PROTECTED]> escreveu > 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