關於你的問題並沒有很複雜,只要在程式執行期間讓不想被誤按的元件暫時失去功能即可


至於程式要怎麼做?如果要防止誤按的元件不多,就個別設定。如果要防止誤按的元件很多,就乾脆在程式執行期間讓所有元件暫時失去功能,如此就可以用迴圈來簡化程式

 

 


以下簡單舉例說明:


首先在程式面板放2個按鈕元件,OK Button當成是啟動按鈕,OK Button 2當成是要被防止誤按的按鈕

20140801-01  

 

 


防止誤按的元件不多,就個別設定


1.OK Button按鈕連接Case Structure元件,要執行的程式到時是放在True狀態內,False狀態內不放任何程式(除非你在False狀態還有其他要執行的程式)

20140801-02  


2.再來是OK Button 2按鈕要防止被誤按,所以要叫用OK Button 2的屬性。在OK Button 2上按滑鼠右鍵,從跳出的選單中點選Create底下的Property Node內的Disabled那一項

20140801-03  


3.這樣會產生OK Button 2的屬性元件,把它放在Case Structure的True狀態內,這時OK Button 2屬性元件還是輸出狀態

20140801-04  


4.在OK Button 2屬性元件上按滑鼠右鍵,從跳出的選單中點選Change To Write選項,將OK Button 2屬性元件變更為輸入狀態

20140801-05  


5.將已變更為輸入狀態的OK Button 2屬性元件輸入數值設定為1或2,代表要讓OK Button 2失去功能(數值設定為0則回復功能)

20140801-06  


6.OK Button 2屬性元件後面連接Flat Sequence Structure元件,要執行的程式放在Flat Sequence Structure元件內

20140801-07  


7.在Flat Sequence Structure元件再連接一個OK Button 2屬性元件,數值設定為0回復功能

20140801-08  


整段程式的動作原理:按OK Button按鈕後,程式先使OK Button 2按鈕失去功能再執行需要的程式,等需要的程式執行完畢就恢復OK Button 2按鈕功能

 

 


防止誤按的元件很多,讓所有元件暫時失去功能


1.OK Button按鈕連接Case Structure元件,要執行的程式到時是放在True狀態內,False狀態內不放任何程式(除非你在False狀態還有其他要執行的程式)

20140801-02  


2.放一個Property Node元件到Case Structure的True狀態內

20140801-09  


3.在Property Node元件上按滑鼠右鍵,從跳出的選單中點選Select Class底下的VI Server底下VI內的VI那一選項

20140801-10  


4.接著在Property Node元件下方Property字樣上按滑鼠左鍵,從跳出的選單中點選Front Panel選項完成設定

20140801-11  


5.在下來在Property Node元件後面再接一個Property Node元件,同樣在Property Node元件下方Property字樣上按滑鼠左鍵,從跳出的選單中點選Controls[]選項完成設定

20140801-12  


6.接著後面使用For Loop迴圈,裡面再放個Property Node元件,同樣在Property Node元件下方Property字樣上按滑鼠左鍵,從跳出的選單中點選Disabled選項,變更為輸入狀態,輸入數值設定為1或2,讓所有元件失去功能

20140801-13  


7.迴圈後面連接Flat Sequence Structure元件,要執行的程式放在Flat Sequence Structure元件內

20140801-14  


8.最後在Flat Sequence Structure元件後面再連接一個For Loop迴圈,裡面Property Node元件的Disabled選項輸入數值設定為0,讓所有元件回復功能

20140801-15  


整段程式的動作原理:按OK Button按鈕後,程式先使所有元件失去功能再執行需要的程式,等需要的程式執行完畢就恢復所有元件功能

文章標籤
創作者介紹

LabVIEW & PLC還未出師的小工程師部落格

未出師的小工程師 發表在 痞客邦 PIXNET 留言(0) 人氣()