Obter tipo de uma propriedade no Delphi
Inclua na seção uses: TypInfo
Esta função retorna uma string com o nome do tipo de dado de uma propriedade. Exemplos de retornos: PropType(Button1, 'Caption'); // Retorna 'TCaption' PropType(Edit1, 'Width'); // Retorna 'Integer'; PropType(Edit1, 'Color'); // Retorna 'TColor'; function PropType(const Obj: TObject; const PropName: string): string; var Info: PPropInfo; begin Info := GetPropInfo(Obj.ClassInfo, PropName); if Assigned(Info) then Result := Info^.PropType^.Name else Result := ''; end; Exemplo de uso: - Coloque um TButton e um TEdit; - No OnClick do Button1 coloque o código abaixo; - Execute, digite 'Caption' no Edit1 e clique em Button1. procedure TForm1.Button2Click(Sender: TObject); begin ShowMessage(PropType(Button1, Edit1.Text)); end;
Verdadeiramente não sei exatamente onde poderíamos aplicar esta dica, mas divulguei-a porque achei interessante. Acredito que o Object Inspector use algo parecido.