Galera tenho a função abaixo para fazer a validação e destacar os campos
obrigatórios em um form.

Essa função foi passada em um número da revista Clube Delphi que eu não me
lembro, mas ela não está funcionando.

Alguém poderia me dar uma mão e ver o que está errado ?

Obrigado.

function Valida(F: TForm): boolean;
var
   i   : integer;
   lbl : TLabel;
   ds  : TDataSource;
   fn  : string;
   c   : TObject;
begin
   for i := 0 to F.ComponentCount - 1 do
   begin
      if F.Components[i] is TLabel then
         lbl := F.Components[i] as TLabel;
      lbl.Font.Color := clWindowText;
      lbl.Font.Style := [];
      if lbl.FocusControl <> nil then
      begin
         c := lbl.FocusControl;
         {Declare TypInfo no uses}
         if IsPublishedProp(c,'DataSource') then
         begin
            ds := TDataSource(GetObjectProp(c,'DataSource'));
            if IsPublishedProp(c,'DataField') then
            begin
               fn := GetStrProp(c,'DataField');
               if ds.DataSet.FieldByName(fn).Required then
                  if ds.DataSet.FieldByName(fn).IsNull then
                  begin
                     lbl.Font.Style := [fsBold];
                     lbl.Font.Color := clRed;
                  end;
            end;
         end;
      end;
   end;
end;

                    ~\\|//~
                    -(o o)-
o--------------oOOOo--(_)--oOOOo-------------o
|                                            |
|           Eduardo de Almeida Silva         |
|               Kobra Sistemas               |
|  [EMAIL PROTECTED]  -   (14)3263-0326   |
|                                            |
|                .oooO   Oooo.               |
o----------------(   )---(   )---------------o
                  \ (     ) /
                   \_)   (_/



-- 
<<<<< 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