From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



在頂層 VI 察覺 Sub VI 中發生的事件



主要軟體:
主要軟體版本: 7.0
主要軟體修正版本:
次要軟體: N/A

問題: 我在一個 Sub VI 有一個事件結構(Event Structure),並且想要在頂層 VI 能察覺到這個事件,請問可行嗎?

解答:

在 LabVIEW 7.0 版本中,是可以察覺到從 Sub VI 發生在人機介面上的事件。而每個 VIs 之間的連結,便是在人機介面中會觸發事件的物件之參考點。要在一個頂層 VI 中察覺發生在 Sub VI 中的事件,必須做以下動作:

在 Sub VI 中

    1.  在人機介面上放置 control reference 來進行對事件的監控。
    2.  在程式區放置 Register For Events 這個函式。
    3.  將每一個 control reference 與 Register For Events 這個函式連接起來,並且選擇欲監控的事件類型(例如:在圖1 中的 Value Change),以註記這些要控制的事件。

圖1:在Sub VI 中的事件註記

    4.  在 Event Structure 中按右鍵至選單選取 Show Dynamic Event Terminals ,並啟動之。
 

圖2:Show Dynamic Event Terminals

    5.  將 Register For  Events 這個函式與 Dynamic Event Terminal 連接起來,編輯要監控的事件類型。在 dynamic source 底下選擇 control 和 event 。

圖3:Edit Events 對話視窗

.在 event structure 之後放置 Unregister For Events 這個函式,並且將 dynamic event terminal 的輸出連接到 Unregister For Events

圖4:Sub VI 架構

在頂層 VI

    1.  在人機介面上建立一個 control reference 。在 control 上按右鍵並選擇:Create»Reference
    2.  將 Sub VI 放進這個頂層 VI 中。
    3.  將這個 reference 從頂層 VI 中傳至 Sub VI 。把這個 control referene 連接至在 Sub VI 中相對應之 control reference 。

圖5:含有 control reference 之頂層 VI

注意:不適用於 LV 7.0 以前之版本,因為在 LV 7.0 方引進 dynamic event registration 。

範例請參考以下連結。

如需更多資訊, LabVIEW 8.0 或之後的版本,請在 LabVIEW Help (連結如下)參考 Using Events in LabVIEW 。而 LabVIEW 7.1 或更先前的版本,請參考 LabVIEW User Manual (連結如下)。



相關連結:

附加檔案:


Example.zip - Example.zip


報告日期: 12/31/2003
最後更新: 11/06/2008
文件偏號: 34UBL0RF