Fórum Como passar parametro uma variavel do tipo TForm? Estranho. #256116
26/10/2004
0
Pessoal estou tentando fazer um único metodo que pegue os campos de 2 formulários (os componentes tem o mesmo nome). Porém não estou conseguindo pois o Delphi não acha os componentes.
Tenho 3 formulário na aplicação. FrmEx1, FrmEx2 e DtmdlGeral.
No DM eu tenho um método.
Procedure Mudar_Label (Form : TForm)
Begin
Form.LblRotulo.Caption := ´Teste´;
end;
Sendo que uma vez irei chamar Mudar_Label (FrmEx1) e depois Mudar_Label (FrmEx2). POrém o Delphi não deixa complilar pois Não existe realmente o componente em tempo de Designer apenas em execução.
Fica aberto ai pessoal. Eu sei que tem como fazer um IF xxxx Else mas quero ver se tem como fazer o negócio de uma forma com menos código.
Abraços.
Yalle Cunha.
yalle@brtecno.com
www.brtecno.com
Yallebr
Curtir tópico
+ 0Posts
26/10/2004
Paulo_amorim
Utilize a função FindComponent:
TLabel(Form.FindComponent(´lblRotulo´) ).Caption := ´Teste´;
Espero que ajude
Até+
Gostei + 0
26/10/2004
Delphi32
Talvez seja esse o problema.
Até!
Gostei + 0
26/10/2004
Marcio.theis
Você pode tentar da seguinte forma: var n: integer; begin while n <= (Form.ComponentCount - 1) do begin if (Form.Components[n].ClassType = TLabel) then begin if TLabel(Form.Components[n]).Name = ´lblRotulo´ then TLabel(Form.Components[n]).Caption:=´Teste´ end; Inc(n); end;
________________
espero ter ajudado;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)