在LabVIEW中使用事件的說明與建議
- 避免在循環(huán)外使用事件結(jié)構(gòu)。
- 記得在“值改變”事件分支中讀取觸發(fā)布爾控件的接線端。
- 條件結(jié)構(gòu)用于處理觸發(fā)布爾控件的撤消操作。
- 將一個(gè)條件分支配置為處理多個(gè)通知事件的操作時(shí),使用警告信息。
- 不要使用不同的事件數(shù)據(jù)將一個(gè)分支配置為處理多個(gè)過濾事件。
- 如含有事件結(jié)構(gòu)的While循環(huán)基于一個(gè)觸發(fā)停止的布爾控件的值而終止,則記得在事件結(jié)構(gòu)中處理該觸發(fā)停止布爾控件。
- 如無需通過程序監(jiān)視特定的前面板對(duì)象,考慮使用“等待前面板活動(dòng)”函數(shù)。
- 用戶界面事件僅適用于直接的用戶交互。
- 避免在一個(gè)事件分支中同時(shí)使用對(duì)話框和“鼠標(biāo)按下?”過濾事件。
- 避免在一個(gè)循環(huán)中放置兩個(gè)事件結(jié)構(gòu)。
- 使用動(dòng)態(tài)注冊(cè)時(shí),確保每個(gè)事件結(jié)構(gòu)均有一個(gè)“注冊(cè)事件”函數(shù)。
- 使用子面板控件時(shí),含有該子面板控件的頂層VI將處理事件。
- 如需在處理當(dāng)前事件的同時(shí)生成或處理其它事件,考慮使用事件回調(diào)注冊(cè)函數(shù)。
- 請(qǐng)謹(jǐn)慎選擇通知或過濾事件。用于處理通知事件的事件分支,并將無法影響LabVIEW處理用戶交互的方式。如要修改LabVIEW是否處理用戶交互,或LabVIEW怎樣處理用戶交互,可使用過濾事件。
- 不要將前面板關(guān)閉通知事件用于重要的關(guān)閉代碼中,除非事先已采取措施確保前面板關(guān)閉時(shí)VI不中止。例如,用戶關(guān)閉前面板之前,確保應(yīng)用程序打開對(duì)該VI的引用。或者,可使用前面板關(guān)閉?過濾事件,該事件在面板關(guān)閉前發(fā)生。
評(píng)論