LABVIEW深入探索之如何使多個事件分支執(zhí)行相同的功能
在實際應(yīng)用中,經(jīng)常會遇到多個不同的事件源,需要觸發(fā)同一事件的問題。最為常見的是程序的菜單項和工具欄的按鈕問題。通常情況下,工具欄的按鈕對應(yīng)菜單條的中的某一項,二者的作用是相同的。在C語言編程中,通常為二者注冊同一回調(diào)函數(shù),這樣二者的反應(yīng)就完全相同了。
在Labview的編程實踐中,也會遇到類似的問題,基于LABVIEW事件結(jié)構(gòu)的特殊性,存在幾種常見的方法可以解決這個問題。
1、為一個分支靜態(tài)注冊多個事件。
這種方法與其它編程語言類似,類似于為多個事件注冊同一回調(diào)函數(shù)。下面我用四個按鈕來舉例說明。
顯然圖中四個按鈕的作用是類似的,比如移動圖片,包括上下左右四個方向。一般情況下,我們對四個按鈕是分別靜態(tài)注冊事件,因此會出現(xiàn)四個事件處理分支,非常繁瑣,也容易出現(xiàn)問題。
初學(xué)者可能沒有注意到一個事件分支可以靜態(tài)注冊多個控件的事件,注冊方法如下圖所示:
通過事件結(jié)構(gòu)中控件的引用可以區(qū)分是那個按鈕產(chǎn)生了事件。
評論