Solución
La Estructura de eventos solo registra los eventos generados por la interacción directa del usuario con el panel frontal. En este problema, el valor del indicador se cambia mediante programación, por lo que LabVIEW no captura el evento de Cambio de Valor. Además, los eventos de Cambio de valor no se producen si utiliza VI Server, variables globales, variables locales, etc. para cambiar los objetos de VI o del panel frontal mediante programación.
Hay una excepción: los eventos para controles e indicadores pueden generarse mediante programación con un nodo de propiedad, utilizando la propiedad
Val (Sgnl) (Value (Signaling)), como la figura de abajo. Esta propiedad de solo escritura crea un evento que actúa como un cambio de valor del panel frontal cada vez que se escribe. Sin embargo, tenga cuidado de utilizar esta propiedad en un bucle, ya que si se escribe en cada iteración del bucle, generará un desencadenante de cambio de valor para cada iteración, independientemente de si el valor se cambió realmente.
Consulte la figura a continuación para ver una demostración sobre el evento de cambio de valor utilizando la propiedad Val (Sgnl).
Este VI usa el Val (Sgnl) Propiedad para actualizar el indicador, así como para generar un evento. Cuando se actualice el indicador "A * B", la estructura del evento registrará el evento y actualizará el indicador "Última actualización" con la hora actual.
En contraste, vea la figura a continuación para ver una demostración sobre el evento de Cambio de Valor usando la propiedad Value.
Este VI usa la propiedad de Cambio de Valor para actualizar el indicador. Cuando se actualice el indicador "A * B", la estructura del evento no registrará el evento ya que no hay evento para registrar.
En ambos VIs, el producto se escribe mediante programación en el indicador "A * B". Ambos VI también tienen una estructura de eventos destinada a capturar un evento de cambio de valor del indicador "A * B". Solo el VI que utiliza la propiedad Valor (señalización) registrará un evento cuando se actualice el indicador "A * B".