引用:
作者: andy0103
Private Sub Form_Load()
你在 form_load事件 使用 doevents
我覺的 是有點問題
因為 doevents 會把表單控制權 暫時放出去
但是 這時候 forn_load() 內的程式碼 並未完全 執行 完畢
就在 下一個 執行時間片段 該表單的事件 觸發順序可能會 異常
有可能 form_activate() 事件 執行完成 在 forn_load()事件 之前
doevents 使用在 多工的環境 要小心
常會因電腦的快慢 就在 下一個 執行時間片段 該表單的事件 觸發順序可能會 異常
我想你反覆的test 應該已經快 抓到問題的核心
|
引用一段教學文章(大陸的,去Google一下,可以查到一堆網頁)
如何編寫高質量的VB代碼
在使用本機代碼進行編譯時,我發現有時候會引入一些莫名其妙的錯誤。在編譯環境中我的代碼完全正確地被執行了,但是用本機代碼選項生成的EXE檔卻不能正確執行。通常這種情況是在卸載視窗或彈出列印視窗時發生的。我通過在代碼中加入DoEvent語句解決了這個問題。當然出現這種情況的幾率非常少,也許有些VB程式師從來沒有遇到過,但是它的確存在。
So...我加入了Doevents來測試,但是,那是出錯後才加的,加入前和加入後情形一樣。
你講的非常有理,Doevents不能亂用,詳見MSDN說明...
剛聽您這樣一說,我今天又有任務了..不要一在Form Load就Show 另一個Form...試試..
另一篇英文文章...
http://www.experts-exchange.com/Prog..._20853230.html
提到我這個Error Code...大意是,他們公司新進了一批電腦,原本用好好的程式就出錯了,新舊電腦都是用Windows 2000 Sp4的OS...他也是找不出問題所在。
昨天星夜看完Google上英文(國內沒見到任何此類型討論)的類似文章...和我的問題都是不同的。有的說IE太舊,有的說要裝VB6 RunTime那程式,有的說舊的CommonDialog被註冊,新的就註冊不了。我用一個空白的Form去Setup,朋友可以用啊!!馬上請她再執行我的程式..怪..又不成了。問題就出在那個起始Form,但我看不出它的任何不同。如果她的電腦在我這,我一定一天就可以搞定。網路上很多教學文章或是坊間書籍常常都是講一半,哈。有時真的要自己去測試,一項項加一個個Try and Error。
大概,我的起始Form要改改了...再換個型式,山不轉路轉。不要用功能列試試...
這程式是我要送我指導論文教授的,花了我三星期去找資料庫的教學,又不是要去賣,別再整我了,老天!!我又不是讀資管的,從GW Basic進到VB已夠整人了,又碰資料庫,又搞這不相容電腦。小抱怨一下。