在Access狀態欄顯示信息及實時顯示日期和時間

2002-12-09 01:47:00
大熊-Office交流網
原創
4452

問題(Access網友jhzlzc29):
 怎樣在狀態欄上實時顯示日期和時間,或者告訴小弟在窗體上用實時刷新的方法,怎么才能不影響程序運行


解決方法(Access網友大熊)
 
大熊

要使用SysCmd方法在Access狀態欄顯示內容
SysCmd 方法
請參閱 應用于 示例 特性 
使用 SysCmd 方法可以:在狀態欄中顯示進度表或可選的指定文本,返回有關 Microsoft Access 及其關聯文件的信息,或返回指定數據庫對象的狀態(表明對象是打開的、是新對象,還是已進行更改但沒有保存)。Variant 型。 

expression.SysCmd(Action, Argument2, Argument3)

expression  必需。返回“Applies To”列表中的一個對象的表達式。

Action  必需 AcSysCmdAction。下列固有常量之一,確定要執行操作的類型。下面的常量集應用于進度表。如果這些操作成功,則 SysCmd 方法返回 Null 值。否則,Microsoft Access 將產生運行時錯誤。

AcSysCmdAction 可以是下列 AcSysCmdAction 常量之一: 
acSysCmdAccessDir。返回 Msaccess.exe 所在的目錄名 
acSysCmdAccessVer。返回 Microsoft Access 的版本號。 
acSysCmdClearHelpTopic 
acSysCmdClearStatus。下列常量提供有關數據庫對象狀態的信息: 
acSysCmdGetObjectState。返回指定數據庫對象的狀態。使用該 action 值時,必須指定 argument1 和 argument2 參數。 
acSysCmdGetWorkgroupFile。返回工作組文件 (System.mdw) 的路徑。 
acSysCmdIniFile。返回與 Microsoft Access 關聯的 .ini 文件。 
acSysCmdInitMeter。初始化進度表。使用該操作時,必須指定 argument1 和 argument2 參數。 
acSysCmdProfile。在通過命令行打開 Microsoft Access 時,返回由用戶指定的 /profile 設置。 
acSysCmdRemoveMeter。刪除進度表。 
acSysCmdRuntime。如果正在運行 Microsoft Access 的運行時版本,返回 True (–1)。 
acSysCmdSetStatus。將狀態欄文本設置為 text 參數。 
acSysCmdUpdateMeter。用指定值更新進度表。使用該操作時,必須指定 text 參數。 

Argument2  可選 Variant 型。字符串表達式,表示狀態欄中靠左顯示的文本。當 action 參數是 acSysCmdInitMeter、acSysCmdUpdateMeter 或 acSysCmdSetStatus 時,該參數為必需項;該參數對其他 action 參數值無效。

注意  使用 acSysCmdGetObjectState 參數時,Excel 要求使用 Argument2 及下列固有常量之一:

acTable 
acQuery 
acForm 
acReport

acMacro

acModule

acDataAccessPage

acDefault

acDiagram

acServerView

acStoreProcedure

該參數對于其他 action 參數值無效。
 

Argument3  可選 Variant 型。數值表達式,用于控制進度表的顯示。當 action 參數是 acSysCmdSetStatus 時,該參數為必需項;該參數對其他 action 參數值無效。

注意  使用 acSysCmdGetObjectState 參數時,Excel 要求使用 Argument3。一個由 Argument2 指定類型的數據庫對象的有效名稱字符串表達式。該參數對于其他 action 參數值無效。

說明
例如,如果正建立一個創建新窗體的自定義向導,可以使用 SysCmd 方法來顯示一個進度表,指出向導構建窗體時的進度。

通過使用各種進度表操作來調用 SysCmd 方法,可以在狀態欄中顯示一個已知持續時間或步驟數目的操作進度表,并且可以對其更新以表示操作的進度。

若要在狀態欄中顯示進度表,首先必須使用 acSysCmdInitMeter action 參數、text 和 value 參數來調用 SysCmd 方法。當 action 參數為 acSysCmdInitMeter 時,value 參數是進度表的最大值或 100%。

若要更新進度表以顯示操作的進度,請用 acSysCmdUpdateMeter action 參數和 value 參數來調用 SysCmd 方法。當 action 參數是 acSysCmdUpdateMeter 時,SysCmd 方法使用 value 參數來計算進度表中顯示的百分比。例如,如果設置最大值為 200,然后用 100 的值更新此表,則進度表只填滿了一半。

也可以通過調用帶有 acSysCmdSetStatus action 參數和 text 參數的 SysCmd 方法來更改狀態欄中顯示的文本。例如在排序期間,可能希望文本改為“正在排序...”。當排序完成時,還想通過刪除該文本來重置狀態欄。text 參數可以包含大約 80 個字符。因為狀態欄文本使用成比例的字體來顯示,可以顯示的實際字符數目取決于 text 參數指定的所有字符的總寬度。

在增加狀態欄文本寬度的同時,也減少了該進度表的長度。如果文本比狀態欄還要長而且 action 參數是 acSysCmdInitMeter,則 SysCmd 方法將忽略該文本,在狀態欄上無任何顯示。如果文本比狀態欄還要長而且 action 參數為 acSysCmdSetStatus,則 SysCmd 方法將截取文本以填充狀態欄。

不能將狀態欄文本設置為零長度字符串 (" ")。如果想從狀態欄中刪除現有的文本,請將 text 參數設置為一個空格。下面的示例說明了從狀態欄中刪除文本的方法:

varReturn = SysCmd(acSysCmdInitMeter, " ", 100)
varReturn = SysCmd(acSysCmdSetStatus, " ")
使用 acSysCmdSetStatus action 參數調用 SysCmd 方法來設置該文本時,如果進度表已經顯示,則 SysCmd 方法將自動刪除此表。

可以用其他操作調用 SysCmd 方法,以決定有關 Microsoft Access 的系統信息,這些信息包括 Microsoft Access 正在運行的版本號、是否是運行時版本、Microsof

zhengjialon

要實現日期和時間自動更新
要在計時器觸發里里寫  先計時器間隔寫1-1000的任一數字。然后在Timer事件代碼中定時調用上面的代碼

將Date() Now()  最新日期和時間 顯示在Access狀態欄上

分享
北京十一选五基本走势