![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
El evento al perder el foco es el OnExit de ese DBEdit, y justo despues es cuando el valor de ese DBEdit se asigna al campo de la tabla, por tanto, en el mismo OnExit del DBEdit no te sirve, sino que tendrás que usar el OnEnter del siguiente DBEdit.
El problema que tiene ese método, es que el usuario puede no salir del DBEdit para guardar los cambios, es decir, da el foco al DBEdit, cambia el valor del DBEdit, y a continuación coge el ratón y le da a guardar los cambios. Si el botón de guardar es un TSpeedButton o derivado, no se genera el evento OnExit del DBEdit, porque precisamente los TSpeedButton no capturan el foco del ratón. En ese caso habría que llamar a la rutina que hace los cálculos 20 veces, uno en el evento OnExit de cada DBEdit, (porque el usuario siempre puede editar un registro y cambiar un sólo dato para ver los cálculos y posteriormente cancelar la edición), y otra vez en el evento BeforePost de la tabla. Como ves no es eficiente, pero la comodidad de modificar un dato, y que automáticamente se recalcule todos los demás, tiene un precio. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 25-06-2006 a las 19:38:37. |
|
#2
|
||||
|
||||
|
Pues que cosas, yo uso algo así y me funciona perfectamente.
En el evento "OnExit" de un TDBEdit llamo a un par de funciones y una de ellas utiliza el nuevo dato que el edit le ha pasado a la tabla. Ojo uso el de la consulta, no el del edit, aunque en mis pruebas he comprobado que son iguales. Para aclarar un poco, yo tengo un TDBGrid con varias líneas que voy modificando y cuando acabo lo grabo todo en una única transacción. En el evento "OnExit" del TDBEdit realizo un reparto proporcional de cantidades entre las diferentes líneas del grid considerando el cambio que se ha producido en la actual. Y me funciona perfectamente. |
|
#3
|
||||
|
||||
|
Hola y mil gracias a todos....
Mil gracias a tosos los q respondieron en este tema, gracias a su ayuda he logrado resolver mi problema, el cual residia en los eventos y con las aclaratorias de ustedes funciono.
Utilizando el evento OnExit y los datos de las tablas mis calculos se realizan en directo y sin tener q guardar los cambios hasta su aprovacion. Nuevamente mil gracias a todos fueron de gran ayuda y disculpas a quienes hice enojar con mis dudas, ya q soy nuevo en esto y es mi primera vez mmm claro q me refiero a delphi posupuesto... jijiji... Gracias y gracias. [email protected] este es mi correo para quienes quieran escribir sujerencias gracias.
__________________
Solo se q nada Se, Cada dia es un aprendisaje y asi siempre sera. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Convertir numero en cadena | rex | JAVA | 7 | 25-10-2007 03:28:11 |
| Convertir una cifra de tipo real a su cantidad en letras | reina | Varios | 7 | 11-08-2005 18:16:31 |
| Problema copn un campo DBEdit de tipo precio????ayudaa!!!!! | Bitbanner | Tablas planas | 4 | 09-02-2005 15:02:35 |
| Convertir texto a Tipo Título | Tangela | Varios | 1 | 20-10-2004 14:57:26 |
| Convertir variable tipo Word a Char | andre | Varios | 2 | 15-12-2003 20:15:23 |
|