LABVIEW深入探索之如何使多個(gè)事件分支執(zhí)行相同的功能
2、利用值(信號(hào))屬性節(jié)點(diǎn)轉(zhuǎn)發(fā)事件
如果我們?yōu)槊總€(gè)按鈕單獨(dú)注冊(cè)了事件,可以在一個(gè)按鈕事件分支中處理所有按鈕的響應(yīng)代碼,通過值(信號(hào))屬性節(jié)點(diǎn),可以編程實(shí)現(xiàn)觸發(fā)事件,如下圖所示:
3、不同事件分支調(diào)用同一VI
這種方法使用比較簡(jiǎn)便,對(duì)需要相同功能的事件分支,調(diào)用同一函數(shù)(VI),因?yàn)榉浅:?jiǎn)單,就不舉例了。
4、采用生產(chǎn)消費(fèi)者模式(事件)
使用基于事件的生產(chǎn)消費(fèi)者模式后,對(duì)于不同的事件分支,產(chǎn)生相同的功能就非常容易了,無非是向隊(duì)列入隊(duì)相同的數(shù)據(jù)而已。LABVIEW提供了生產(chǎn)消費(fèi)者模式的模版,如下圖所示:
但是一般都要根據(jù)自己的需要,重新封裝隊(duì)列,比如下面的例子:
上面介紹了幾種常用的方法,如果我們使用了生產(chǎn)消費(fèi)者模式,結(jié)合事件結(jié)構(gòu),我們就有了自己的消息處理中心,這種方式與WINDOWS的消息機(jī)制非常類似,使事件結(jié)構(gòu)的處理更為靈活,重點(diǎn)推薦這種方式。
評(píng)論