FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Acceder a form modal desde módulo de datos
Hola,
Me gustaría saber cómo podría acceder a una form modal desde un módulo de datos, me explico: Tengo una form modal con componentes de acceso a campos de una tabla que está en un módulo de datos, en el evento OnNewRecord (por ejemplo) de la tabla quisiera poner el código para que se activara un botón que está en la form modal (FModal.Boton_X.Enabled:=True, por ejemplo). Un saludo y muchas gracias. |
#2
|
||||
|
||||
Se considera una mala práctica hacer que los módulos de datos accedan a los formularios (por lo general, son los formularios los que conocen y utilizan los módulos de datos pero no al revés).
Lo que yo te recomendaría es que utilizaras los eventos del DataSource para detectar los cambios de estado o de datos de la tabla en sí y codificar ahí tus operaciones (revisa los eventos: OnDataChange, OnStateChange y OnUpdateData, aunque, en tu caso, el evento que más te va a interesar es el relacionado con el cambio de estado, OnStateChange). Si el DataSource lo tienes en el mismo formulario, entonces, sólo has de especificar las operaciones en el evento de éste que mas de convenga, pero si lo tienes en un módulo de datos, entonces, lo que podrías hacer es, por ejemplo, crear propiedades de tipo "evento" para el módulo y capturar luego éstas en el formulario: Módulo de datos
Formulario
(Esta misma técnica la puedes utilizar para capturar otros eventos del DataSet, pero lo mejor es utilizar los del DataSource cuando se trata de sincronizar la interfaz) Saludos! P.D: Mejorando el ejemplo, también podrías crearte un tipo de evento propio que reciba el estado del DataSet (y así saber si está en inserción, edición, etc.). Módulo de datos
Formulario
Última edición por jmariano fecha: 31-01-2006 a las 13:04:08. |
#3
|
||||
|
||||
Hola jcheco, para añadir un poco mas al comentario de jmariano, yo lo que hago siempre para estos casos es dejar los datasets en el DataModule y pongo los DataSources en los formularios. En el evento OnStateChange pongo un código mas o menos asi:
__________________
"En el siglo de la estupidez todas las casas comienzan por la fachada" (Fuckowsky) Planeta Insólito, La Pluma Inspirada |
#4
|
||||
|
||||
Hola,
Bueno, no se puede acceder asi olimpicamente, pero con el poder de los objetos.
es un ejemplo que te puede servir. Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
como importar informacion a mi base de datos desde un disket | ibbeth | Firebird e Interbase | 13 | 20-01-2007 10:18:38 |
Imposible hacer visible un form desde otro form | SMTZ | .NET | 13 | 16-01-2006 21:41:08 |
Crear un Form desde un componente | nemo | OOP | 2 | 16-07-2003 04:51:02 |
Módulo de datos con DbExpress | Gisela | Conexión con bases de datos | 4 | 02-07-2003 16:10:33 |
Acceder a Firebird desde ASP.NET | victork_py | Conexión con bases de datos | 0 | 12-05-2003 16:50:43 |
|