You are on page 1of 2

呼叫子程式視窗 但主程式試窗卻不能操作

主程式執行時它會跳出子程式視窗。但是子程式視窗跳出時,我主程式的試窗反而
無法使用了?? 就按 alt+tab 也只秀出子程式試窗,主程式視窗就不見了。

點選主程式裡的 subvi 的 sespend when called 雖然能達到我要的效果(不過子程式


好像怪怪的),讓主程式及子視窗同使用,但是關閉子程式時卻無法自動關閉。

不知道這問題要如何應該要怎麼設定才能讓子程式跟主程式的視窗能同時使用,且
當我按子程式視窗的停止鈕來結束子程式時,子程式視窗就會消失。

麻煩各位大大的幫忙了。謝謝。

一、您主程式 while Loop 用法不太對,構架上還有許多地方可再進精、編修,以


下使用簡易 event structure 結構撰寫,請將 main.vi、dee-fix.vi 放在同一目錄下執
行,即可達到您要的功能。

二、程式作動如下:

 mail.vi:按下「OK」開啟 dee-fix.vi 子程式,同時指示燈亮起


「SubVI_Open_OK」,預設 2 秒後指示燈熄減
 mai.vi:按下「STOP」停止程式執行(非關閉 vi)
 dee-fix.vi:程式碼稍作修改,改由亂數產生並顯示,按下「STOP」關閉整
個 vi

參考
main.vi 
dee-fix.vi

謝謝大大,您的程式我拜讀之後已經吸收了。

原來用 invoke node 可以做到這麼多。

這樣我對子程式視窗運用就更瞭解了,謝謝大大的教學。
另外請問大大一下,select vi 這個功用主要是用在甚麼?把東西丟給子程式讓它運
算後再丟值出來嗎? 我目前都只這樣使用 select vi 而已。

1. 如果寫程式一開始有建立 project,那 Select vi 的動作和在 Project 內直接把


vi 拉進 block diagram 的意思是一樣的,通常用在匯入 SubVI
2. 當程式功能愈複雜,使用 SubVI 的次數即愈頻繁,好處能使程式簡潔乾淨、
易維護、好擴充
3. 附件為 Select vi 及 Project 拉進 vi 影片,參考

You might also like