|
1.盡量避免使用 Variant 變量。由于VB不能確定 Variant 變量的具體類型,所以它會給該類型變量分配16個字節(jié)的空間,而且在用變量進行運算時還要考慮到數(shù)據(jù)類型的轉(zhuǎn)換。這既占用內(nèi)存,又影響了速度,會使涉及到復雜運算的程序慢。注意,一個變量的缺省類型就是 Variant,其它類型的變量要用Dim語句單獨聲明。
2.在遇到整型數(shù)據(jù)時盡量使用Long變量。因為Long變量是32位CPU的本機數(shù)據(jù)類型,所以處理速度會很快,尤其是在循環(huán)體中。
3.將控件的常用屬性保存在變量中。一般控件存在于DLL或OCX這類的外部程序中。眾所周知,調(diào)用DLL遠比訪問內(nèi)存慢。所以對于那些放在循環(huán)體中的常用屬性,如果將它們保存在變量中,那么速度將會有成百上千倍提升。
我們在編寫程序時應注意到,在進行長時間等待操作時,可以做一些動畫之類的效果,好讓用戶知道程序運行正常。下面是幾個常用優(yōu)化方法:
(1)使用 Splash 屏幕。也就是我們常見的歡迎窗口。大的應用程序在啟動時,往往會主動或被動地載入一大堆DLL,這要花費很長時間。所以我們在啟動時可以先顯示一個簡單的窗口,上面只放一些作者、版權之類的信息,在這個窗口的Form_Load事件中用Load方法讀入那些最常用的窗體模塊。這樣,雖然實際等待的時間延長了,但用戶所看到的屏幕總是變化的,所以感覺下程序啟動加快了。而且由于常用窗體模塊事先已載入內(nèi)存,以后只需用Show方法來顯示它,跳過了載入過程,在程序運行過程中也會很快的?!?
?。?)使用Timer控件。由于Timer控件的出現(xiàn),使得后臺作業(yè)有了可能。我們可以在每次Timer事件中完成一小部分任務。這樣,由于Timer中的事件能夠在很短的時間內(nèi)完成,用戶一般查覺不到速度的變化。如果一定要在一個循環(huán)內(nèi)完成某個任務,那么不要忘了用DoEvents來釋放用戶?!?
?。?)使用進度條。要使用進度條,需要事先知道數(shù)據(jù)量,所以它很適合用于對已知數(shù)據(jù)的操作,如數(shù)據(jù)庫的排序?!?
總之,優(yōu)化程序要從自己、從用戶等多方面考慮,使程序開發(fā)周期短,且高效易用。中國教程在線,http://www.
|
|
|