Executar procedure de um form dinamico
Bom dia pessoal
tenho em meu projeto um form Frm800R o qual podem ser criadas várias instancias em runtime.
Para criar executo o seguinte código:
Como podem ver com esta função é possível criar varios forms portanto que a variavel ´camada´ sempre tenha outro valor.
Ao fehcar um desses _frm800R, verifico se existe outro _frm800R criado e trago ele para a frente com o seguinte código:
o que estou precisando é executar um evento de um DBRichEdit desse ultimo form que eu trouxe pra frente.
ou seja precisaria fazer algo assim:
[b:aca56d3c26]_frm800R+´camada´.DBRich.OnEnter;[/b:aca56d3c26]
só que já tentei de inumeras formas e sempre é retonardo nil, acho que não estou sabendo executar e localizar esse evento nos forms dinamicos.
Alguem poderia ajudar ?
abraço
Diogo
tenho em meu projeto um form Frm800R o qual podem ser criadas várias instancias em runtime.
Para criar executo o seguinte código:
// declaro uma variavel para o tipo de form ... Var _frm800R : TFrm800R; ... // e crio o form para esta variavel alterando seu nome conforme uma outra variavel que chamaremos de "camada" ... _frm800R := Tfrm800R.Create(Application); _frm800R.Name := ´_frm800R´+IntToStr(Camadal); ...
Como podem ver com esta função é possível criar varios forms portanto que a variavel ´camada´ sempre tenha outro valor.
Ao fehcar um desses _frm800R, verifico se existe outro _frm800R criado e trago ele para a frente com o seguinte código:
... TForm(Application.FindComponent(´_frm800R´+Camada)).BringToFront; SetForegroundWindow(TForm(Application.FindComponent(´_frm800R´+Camada)).Handle); ...
o que estou precisando é executar um evento de um DBRichEdit desse ultimo form que eu trouxe pra frente.
ou seja precisaria fazer algo assim:
[b:aca56d3c26]_frm800R+´camada´.DBRich.OnEnter;[/b:aca56d3c26]
só que já tentei de inumeras formas e sempre é retonardo nil, acho que não estou sabendo executar e localizar esse evento nos forms dinamicos.
Alguem poderia ajudar ?
abraço
Diogo
Diogoalles
Curtidas 0
Respostas
Massuda
29/08/2005
Talvez isto resolva seu problema...
var Form: TForm; ... Form := TForm(Application.FindComponent(´_frm800R´+Camada)); Form.BringToFront; SetForegroundWindow(Form.Handle); TFrm800R(Form).DBRich.SetFocus; // deve disparar o OnEnter
GOSTEI 0
Diogoalles
29/08/2005
Blz Massuda.. Funciounou.. show d bola!
valeu
Diogo
valeu
Diogo
GOSTEI 0