在學習LabVIEW(簡稱LV)時,布爾控件是常用的控件。布爾控件分為按鈕型控件和開關型控件,LV內部並沒有區分按鈕型還是開關型。這兩種布爾控件可以根據需要相互轉換,通過配置布爾控件的機械動作屬性來實現轉換。 布爾控件“值改變”的瞬間是非常重要的,在真實生活中也存在這樣的現象。比如手持型的計數器,我們希望按下一個按鈕,計算增加1。我們就需要考慮機械動作了,是需要按下時計算加1,還是釋放時計算加1,還是按着不釋放就一直加。正確的做法是在釋放按鈕時計算增加1,該類動作稱為“釋放時轉換”。
LV布爾控件的機械動作分成6種,最本質的區別在於轉換生效的瞬間和LV讀取控件的時刻。
右鍵前面板的布爾控件→機械動作
總共6種機械動作,m(mouse)表示操作控件時鼠標的動作,v(value)表示控件輸出值,RD(Read)表示VI讀取控件的時刻。
下面分別介紹這六種動作:
1、單擊時轉換
這種機械動作相當於機械開關,單擊鼠標后,立即改變狀態,並保持改變的狀態,改變的時刻是鼠標單擊的時刻。再次單擊后,恢復原來的狀態,與VI是否讀取控件無關。
2、釋放時轉換
當鼠標釋放后,立即改變狀態。改變的時刻是鼠標按鍵釋放的時刻。再次單擊鼠標並釋放鼠標時,恢復原來的狀態,與VI是否讀取控件無關。
3、單擊時轉換保持到鼠標釋放
這種機械動作相當於機械按鈕。鼠標單擊時控件狀態立即改變,鼠標按鍵釋放后立即恢復,保持時間取決於單擊和釋放之間的時間間隔。
4、單擊時觸發
單擊控件時改變控件值,保留該控件值直到VI讀取該控件。此時,即使長按鼠標按鈕控件也將返回至其默認值。該動作與斷路器相似,適用於停止While循環或令VI在每次用戶設置控件時只執行一次。單按鈕控件不可選擇該動作。
5、釋放時觸發
僅當在控件的圖片邊界內單擊一次鼠標后放開鼠標按鈕時,控件值改變。VI讀取該動作一次,則控件返回至其默認值。該動作與對話框按鈕和系統按鈕的動作相似。單按鈕控件不可選擇該動作。
6、保持觸發直到鼠標釋放
單擊控件時改變控件值,保留該控件值直到VI讀取該值一次或用戶釋放鼠標按鈕,取決於二者發生的先后。單按鈕控件不可選擇該動作。
其實最簡單的方法就是看懂機械動作的圖標。圖標非常形象,只要理解了這六種機械動作的含義,很容易選對機械動作的