Como passar parametro uma variavel do tipo TForm? Estranho.
:?:
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
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
Curtidas 0
Respostas
Paulo_amorim
26/10/2004
Olá
Utilize a função FindComponent:
Espero que ajude
Até+
Utilize a função FindComponent:
TLabel(Form.FindComponent(´lblRotulo´) ).Caption := ´Teste´;
Espero que ajude
Até+
GOSTEI 0
Delphi32
26/10/2004
Vc já declarou no DM a unit Forms?
Talvez seja esse o problema.
Até!
Talvez seja esse o problema.
Até!
GOSTEI 0
Marcio.theis
26/10/2004
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