查看單個文章
舊 2004-09-10, 08:18 PM   #8 (permalink)
s.h.e. 帥哥
註冊會員
榮譽勳章

勳章總數0
UID - 67994
在線等級: 級別:3 | 在線時長:25小時 | 升級還需:7小時級別:3 | 在線時長:25小時 | 升級還需:7小時級別:3 | 在線時長:25小時 | 升級還需:7小時
註冊日期: 2003-05-14
VIP期限: 2006-10
文章: 38
精華: 0
現金: 41 金幣
資產: 41 金幣
預設

引用:
作者: 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已夠整人了,又碰資料庫,又搞這不相容電腦。小抱怨一下。
s.h.e. 目前離線  
送花文章: 0, 收花文章: 0 篇, 收花: 0 次
回覆時引用此帖