Fórum Acessar procedures de outro form sem instanciá-lo #571150
17/11/2016
0
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ç
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
Curtir tópico
+ 0
Responder
Post mais votado
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;
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;
Tone Costa.
Responder
Gostei + 1
Mais Posts
18/11/2016
Rick
Bom dia Tone.
Muito Obrigado.... Fiz da forma que exemplificou e gerou exatamente o que eu precisava :)
Abç
Muito Obrigado.... Fiz da forma que exemplificou e gerou exatamente o que eu precisava :)
Abç
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)