How To - Notify Event & Filtered Event

前些日子在教學時,突然看到某個奇怪的翻譯:「說明 Nitify 事件是什麼」

看到的當下其實我也愣住了,寫 LabVIEW 寫那麼久,怎麼沒聽過Notify的事件,是什麼新的技術嗎?過了約莫半分鐘,才突然領悟到,原來這句話是指:Notify Event

我絕對不是在抱怨為啥翻譯把重要的名詞拆開翻喔喔喔喔喔喔!

在 Event 中,其實有分成兩種捕捉觸發的情形,第一種是 Notify Event ,在 Event 中你會看到編輯事件條件的後面箭頭是綠色的,其實也就是大家常用的情形:使用者變更了物件的值,LabVIEW處理完畢後發出 Value change 的觸發,然後 Event structure 捕捉到這個觸發,最後進入該 Event 條件頁面

第二種則是 Filtered Event,在 Event 中你會看到編輯事件條件的後面箭頭是紅色的,同時該事件的敘述結尾會多一個?,他的情況是這樣:使用者執行了 Panel close,在此同時 LabVIEW 就會送出觸發給 Event structure,使用者可以在這個條件頁面中決定要不要忽略此項操作,以此範例而言,當忽略操作,那麼 Panel close 就不會關閉視窗。

下圖就可以很清楚看到 綠色箭頭的 Panel close (Notify Event) 以及紅色箭頭的 Panel close? (Filtered Event)



下圖則是在QMH架構下,一般針對Panel close的行為進行忽略,同時切換到請使用者確認是否關閉視窗的寫法。



注意 Event 右方有個 Discard? 的輸入,只要給他 True ,系統就會忽略此項操作。

以上針對 Event 兩種不同的觸發狀況做點小說明,希望可以讓大家更了解 Event 的運作!