![]() |
Solo ejecutar un procedimiento cuando solo la ventana esta activa
Buenas tardes club, espero que estén bien,
en esta ocasión me dirijo a ustedes con la siguiente intención: tengo tres Dbedit de los cuales son uno de Cantidad, precio unitario, Valor total. Puse el determinado codigo, en el evento Onchange del dbedit "Precio unitario" para que los valores se vallan calculando automaticamente. Pero el asunto es que como todos saben al ejecutarse el programa los edits se autollenan y da error. tambien pasa cuando insertas la tabla, al "Cambiar de contenido" y quedarse vacio, se ejecuta el codigo y al estar vacios los edits da error. tienen alguna idea? (quiero evitar el uso de botones para calcular, y que se haga automaticamente luego de digitar el precio unitario) saludos! |
Bueno sin ver el codigo podria sugerirte usar el evento onexit en vez de onchange.
Espero te sea util Saludos. |
El codigo
De la forma que dices lo probé, y funciona, pero mi intención principal es que se haga en tiempo real.
El codigo es el siguiente
|
Pensandolo mejor porque no creas un campo calculado. Asi el calculo se actualizara automaticamente al modificar algun dbedit.
|
Lo importante es saber el tipo de error que tu aplicación está presentando. Como no lo has dicho, vamos a suponer que es EDatabaseError. Ese tipo de error usaré para el siguiente código de ejemplo. Cambialo con respecto al tipo de error que tengas:
Como veras, la solución pasa por simplemente ignorar el error. Aunque seguramente existen muchas más soluciones, creo que ésta es una de las más seguras. Usar la propiedad Active del formario puede introducir bugs muy difíciles de rastrear. Saludos! |
La franja horaria es GMT +2. Ahora son las 21:43:16. |
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