![]() |
que evento se produce...?
Quisiera hacer lo siguiente:
estando en una ventana de ABM de ventas, cuando el usuario busca un determinado cliente en un dblookup y no lo encuentra, pueda apretar un botón en ese mismo form y llame al ABM de clientes y luego de darlo de alta regrese al ABM de ventas pudiendo elejirlo de ese dblookup. No se que evento se ejecuta al cerrar la ventana de clientes y volver nuevamente a la de ventas. Probe con varios eventos y ninguno se producia: ni onshow, onactivate, ... ¿Se ejecuta algun evento sobre mi form de ventas en ese momento, es decir, al cerrar un form y quedar activo el de atras? Espero su ayuda. Muchas Gracias. |
Hola,
Creo que lo correcto sería que mostraras el segundo formulario "modalmente", es decir, mediante su método "ShowModal". De ese modo, el primer formulario quedaría pendiente de su "resultado", el cual obtendrías en la variable "ModalResult" del segundo formulario: además podrías utilizar este, puesto que estos resulados son "mrOk", "mrCancel", etc. Por supuesto, el segundo formulario cuenta con el correspondiente evento "OnClose", pero, para mí tengo que mostrar el formulario "modalmente" sería lo suyo. Ya dirás algo. ;) |
Si no quieres trabajar con ShowModal por alguna razón extraña, siempre puedes crearte tus propios eventos:
saludos |
Me parece que no comprendieron cual era mi duda realmente, tal vez yo no me explique bien.
Lo que yo hago es teniendo el 1er form abierto, abro otro (2do form) con "showmodal". Quiero saber que evento se produce sobre el 1er form (que por supuesto queda detras sin poder accederse hasta que no se cierra el 2do.) cuando se cierra el 2do. Ya que quisiera poder realizar cierta accion de refrezcado sobre la tabla de clientes, para poder ver en un lookup del 1er form el nuevo cliente dado de alta en el 2do form. Gracias... |
Si lo haces con ShowModal, no necesitas ningún evento, y es lo que estaba explicando dec.
Cuando llegue al Form2.ShowModal, el código de Form1 se quedará congelado, y hasta que no se asigne la propiedad Form2.ModalResult, no se volverá al código de Form1. En este caso, no necesitas ningún evento. Form2.ModalResult se asigna cuando: - Tienes un BitBtn en Form2. La propiedad Kind del BitBtn indica el modalResult que se devolverá al hacer clic sobre este botón. - Cierras el form2 (creo que se devuelve mrCancel). saludos |
Cita:
Hasta Luego - |
Hola.
Como ya te han comentado, si lanzas de forma modal dicho Form2, no necesitas eventos para saber cuándo se cierra, lo controlas desde el mismo código que lo lanza. Pero quizás también podrías implementar esto a nivel de Datasets, en la tabla de Clientes, en los eventos AfterPost y AfterDelete refrescas la tabla o el campo que sirve de LookUp (supongo que estás utilizando dos componentes TTable ligados a Clientes, uno para las ABM y otro para el Lookup), así te sirve para más formularios donde se requiera un comportamiento similar. |
Muchas gracias..tratare de implementarlo, creo que ahora si me sacaron esa duda...MUCHAS GRACIAS...no dejo de pensarlo..que buen foro che!!...saludos!!
|
La franja horaria es GMT +2. Ahora son las 10:36:36. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi