el 04-06-2008 01:19 PM
el 04-15-2008 04:26 PM
Hola Antonio, hice algunas modificaciones a tu VI. En general con las event structures no se debe de tener más que una sola (que maneje eventos del panel frontal) en el mismo VI esto puede hacer que se través tu programa (se puede tener una con eventos en el panel frontal y otras con eventos dinámicos , pero eso no lo necesitamos aquí).
Ahora otra característica que podemos aprovechar aquí de la estructura de eventos es que el mismo event puede provenir de distintos botones el evento. Aquí yo agregue dos eventos:
El primero para lidiar con el problema del enter. Lo que hace es si apretaste el enter entra al filtro de teclas determina si es un enter, en caso contrario lo deja pasar sin modificación. Si es enter básicamente lo convierte en un tab, por lo que forzar a que sea considerado cambio de valor. Con esto entra al siguiente caso.
En el de cambio de valor lo que hace es compara tus 4 campos para ver si están llenos correctamente y llena en base a esto un arreglo. Después usa el search array y determina que campo falta de llenar, en base a lo que vi en lo que tienes programado. Va a ir al primer campo en orden que no esté correcto. Si todos están correctos, no encuentra ningún valor y te regresa -1 por lo que como en tu código el focus lo paso a el LED que usabas no se si quieres cambiar esto.
Saludos
el 04-15-2008 07:11 PM
el 04-15-2008 07:49 PM
el 04-15-2008 08:35 PM
Hola Antonio ya lo modifique y ya si esta al principio y das Enter ya no se pasa al siguiente valor a menos que escriba algo. La modificación que hice es en el evento que filtro el Enter lo que agregue son dos nodos de propiedad, uno lee el valor actual del control y el otro lo escribe de nuevo usando Value Signaling, forzando a que después de este evento entre el de Value Change y reutilice ese código. Tambien agregue un not que me faltaba en la comparación del Numérico
Saludos