程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> 關於Access數據庫 >> 在Access中用Repaint方法顯示即時信息

在Access中用Repaint方法顯示即時信息

編輯:關於Access數據庫
Access數據庫的使用大概有兩大部分,一是數據的計算與處理,像數據表、查詢這些都是來完成數據處理工作的,他們會按照我們的需要完成數據的計算和處理,形成數據信息以供參考;二是用戶界面(UI)的制作,這一部分雖然不是核心,但是也非常重要,。因為對於一般用戶來講,不會懂得怎樣去建立查詢等等這些工作,他們所需要的只是點點按鈕就能得到必要的信息,所以,我們需要制作大量的窗體來引導用戶進行數據庫的操作,以得到他們所需的信息。所以對於一個好的數據庫應用系統來講,這兩大部分缺一不可。

  在建立窗體,引導用戶使用的過程中,經常會遇到這樣的問題:有時候用戶按下某個命令按鈕,當程序開始執行那個按鈕所關聯的程序時,由於涉及到大量的計算工作,所以電腦運行會變慢,在Access中會表現為屏幕沒有任何反應,時間稍長,就會讓人感覺是不是死機了?所以,在這種情況下,如果有提示框來告訴用戶電腦此時在做什麼會比較好,另外這樣也可以感覺時間短些,因為沒有任何變化的等待會讓人感覺更加漫長!

  要完成這個即時信息顯示窗口,我們首先想到的就是在程序的某一部分加上一段代碼,這段代碼打開一個新的窗口,窗口中會有相關文字,如“程序正在運行,請稍等……”等等,代碼也很簡單,在Access中就是

……

DoCmd.OpenForm "wait"

Forms!Wait!lblwait.Caption = "程序正在運行,請稍等……"

……

  其中,wait是窗體(Form)的名字,lblwait是窗體中的一個標簽(Label)控件的名稱,程序運行到省略號這裡時,會打開wait窗口,然後把標簽控件的名稱改為“程序正在運行,請稍等……”。

  可是當你真正運行這段程序代碼時,會發現效果並不是你想象的那樣,wait窗口確實出來了,但是上面只是一片白色區域,沒有任何文字,最初你可能覺得是自己的電腦運行慢,顯示不出來,但是即使你換到最快的電腦上來運行,結果還會是這樣,豈不郁悶?!

  這個時候,就輪到Repaint方法大顯身手了,將上面的代碼稍作修改,如下面這樣:

……

DoCmd.OpenForm "wait"

Forms!Wait!lblwait.Caption = "程序正在運行,請稍等……"

Forms!Wait.Repaint

……

  再運行一下,就可以看到窗口正常顯示出來提示了。

  之後,你可以在需要的地方都加上這段代碼,把其中的文字換換,就可以在程序的運行過程當中實時提示用戶程序在做什麼了!

  道理其實也很簡單,就是在程序運行過程當中,不會實時的更新屏幕顯示,這樣會加快程序運行的速度,所以在設計到大量計算時,程序就不會有任何顯示更新,像死機了一樣,但是加入了Repaint方法就會強制更新屏幕顯示,就會讓我們動態看到程序運行狀況了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved