LabVIEW可以產(chǎn)生多種不同的事件,為避免產(chǎn)生不需要的事件,可用事件注冊來指定希望LabVIEW產(chǎn)生的事件。
LabVIEW支持靜態(tài)事件注冊和動態(tài)事件注冊兩種模式。
靜態(tài)事件注冊可以指定VI在程序框圖上的事件結(jié)構(gòu)的每個分支具體處理該VI在前面板上的哪些事件。LabVIEW將在VI運行時自動注冊這些事件,如果VI開始運行,事件結(jié)構(gòu)便開始等待事件。
每個事件與該VI前面板上的一個控件、整個VI前面板窗口或某個LabVIEW應(yīng)用程序相關(guān)聯(lián)。靜態(tài)注冊的特點是在程序運行時無法改變事件結(jié)構(gòu)所處理的事件,不能配置一個事件結(jié)構(gòu)來處理前面板上不同VI的事件。
動態(tài)事件注冊通過將事件注冊與VI服務(wù)器相結(jié)合,允許程序在運行過程中使用應(yīng)用程序、VI和控件引用來指定希望產(chǎn)生事件的對象。與靜態(tài)注冊相比,動態(tài)注冊在控制LabVIEW產(chǎn)生何種事件和何時產(chǎn)生事件方面更加靈活;但是動態(tài)注冊比靜態(tài)注冊更復(fù)雜。動態(tài)注冊需要將VI服務(wù)器引用同程序框圖函數(shù)一起使用以明確地注冊和取消注冊事件,而無法通過事件結(jié)構(gòu)配置信息來進行事件的自動處理注冊。
來源:ks994次