Você precisa passar o "pai" dos componentes como parâmetros. Assim : procedure LimparCampos(pai: TForm) begin for i := 0 to pai.ComponentCount -1 do begin if (pai.Components[i] is TEdit) Then (pai.Components[i] as TEdit).Clear;
if (pai.Components[i] is TMaskEdit) then (pai.Components[i] as TMaskEdit).Clear; end ----- Original Message ----- From: "Praxis" <[EMAIL PROTECTED]> To: "Delphi_BR" <delphi-br@yahoogrupos.com.br> Sent: Thursday, August 31, 2006 4:27 PM Subject: [delphi-br] Rotina para limpar campos dando problemas me unit sem form Tenho uma rotina pra limpar todas as edits de um form e ela funciona. Contudo, resolvi fazer uma unit de apoio, sem form, onde coloquei vários procedimentos importantes. Umas delas, a LimparCampos não está funcionando e é a única. Alguém saberia explicar????? Segue parte do código abaixo unit uApoio; //não está acoplada a um form interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Mask, StdCtrls, Buttons, ExtCtrls, DBCtrls; //Exporta método pra outra unit procedure LimparCampos; implementation uses ModuloDados, DateUtils, DB, IBQuery; procedure LimparCampos; var i : integer; begin for i := 0 to ComponentCount -1 do begin if (Components[i] is TEdit) Then (Components[i] as TEdit).Clear; if (Components[i] is TMaskEdit) then (Components[i] as TMaskEdit).Clear; end; end; end. [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Links do Yahoo! Grupos -- <<<<< 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] 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