有些sub 如 text1_keypress(ascii) 中,若有 loop 時,雖然我們click form 右上角的x時,程式看起來已關閉,事實上卻無,請問有何方法自動去關閉所有尚未結束的 sub
所有程式完成後最好用 End ... 或著將所有的 Sub or Function 完成 Exit ... 你可能還有計算在進行, 只是 Form 結束...
其實我並不是很贊成使用 End。我對這種情況的作法是建立一個全域變數 gblnQuit,在 Form_QueryUnload 事件中判別是否要結束,若要結束則將 gblnQuit 設為 True。而迴圈中則對這個變數加以判別,若變為 True 則跳出迴圈。這樣程式便會自動結束了。
我也是覺得最好用類似旗標的方式把各 Sub, Function 結束掉, 但是這個對於新手要改得東西比較繁雜, 不如直接告訴他用 End ... ps. End 只結束 CPU 運算及釋放物件的 Handle , 若有記憶體或物件沒按標準程序釋放, 這些將會變成無主物件, 無法處理, 直至重新啟動...