Acessar procedures de outro form sem instanciá-lo

Delphi

17/11/2016

Boa tarde pessoal.

Tenho a seguinte situação:

Tenho um formCadastro que tem um gauge e um label. Esse cadastro, não faz comunicação com o banco de dados, quem faz a comunicação, é uma classe que criei que também tem outros métodos e as properties que acesso pela formCadastro... tipo uma DAO.

Acontece que, estando dentro da DAOCadastro, gostaria de fazer com que a procedure que manipulo o gauge e o label contido no formCadastro seja executada, mas isso, sem instanciar o formCadastro na DAOCadastro (só assim consegui acessar e manipular estes 2 objetos).

Pode até ser coisa simples, mas estou me matando nesse processo kkk. Alguém poderia me dar um auxílio?

Abç
Rick

Rick

Curtidas 0

Melhor post

Tone Costa.

Tone Costa.

18/11/2016

Eu tenho algo parecido.

Na unit DAO, na secao public eu defino uma variavel Gauge do tipo TGauge e uma varivel Label do tipo TLabel.

Quando instancio o DAO, dentro da unit do form, eu atribuo o gauge e o label do DAO com os componentes do FORM.

Dentro do DAO eu verifico se tem valores nessas variaveis e coloco dados nela

Exemplo

Unit DAO

public
gg : TGauge; // Definir a variavel que vai ser compartilhada
lbl : TLabel; // Definir a variavel que vai ser compartilhada


procedure TDAO.ExecutaQualquerCoisa ;
Begin
if not assigned(gg) then // Verifica se tem valor na variavel gg
gg.progres := 100; // Atribuir valor para a variavel. Neste momento o form vai apresentar a mudanca

if not assigned(lbl) then
lbl.caption := 'Atribui o valor de 100 para o gauge';
end;


Unit Form

DAO := TDAO.Create;
DAO.gg := Guage1;
DAO.lbl := Label1;
DAO. ExecutaQualquerCoisa;
GOSTEI 1

Mais Respostas

Rick

Rick

17/11/2016

Bom dia Tone.

Muito Obrigado.... Fiz da forma que exemplificou e gerou exatamente o que eu precisava :)

Abç
GOSTEI 0
POSTAR