Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 综合其它

在系统状态栏中显示进度条

时 间:2005-04-12 00:00:00
作 者:竹笛   ID:8  城市:上海  QQ:2851379730点击这里给张志发消息
摘 要:本文介绍了如何在系统状态栏中显示进度条,使用了SysCmd函数。我的例子是对69万条数据进行计数,很有意思,快得不得了:)

正 文:

本文介绍了如何在系统状态栏中显示进度条,使用了SysCmd函数。我的例子是对69万条数据进行计数,很有意思,快得不得了:)

文章正文:
第一步:新建一MDB,创建一个Customers表,表中放上60万条数据。

第二步:创建一个新模块MODtest,复制代码到模块中:
'要引用DAO
Option Explicit
Function Meter()
   Dim MyDB As DAO.Database, MyTable As DAO.Recordset
   Dim Count As Double
   Dim Progress_Amount As Double, RetVal As Variant

   Set MyDB = CurrentDb()
   Set MyTable = MyDB.OpenRecordset("Customers")

   ' Move to last record of the table to get the total number of records.
   MyTable.MoveLast
   Count = MyTable.RecordCount

   ' Move back to first record.
   MyTable.MoveFirst

   ' Initialize the progress meter.
   RetVal = SysCmd(acSysCmdInitMeter, "正在读数据...", Count)

   ' Enumerate through all the records.
   For Progress_Amount = 1 To Count
     ' Update the progress meter.
      RetVal = SysCmd(acSysCmdUpdateMeter, Progress_Amount)

     'Print the contact name and number of orders in the Immediate window
    '  Debug.Print MyTable![ContactName]; _
                  DCount("[OrderID]", "Orders", "[CustomerID]='" & MyTable![CustomerID] & "'")

     ' Goto the next record.
      MyTable.MoveNext
   Next Progress_Amount

   ' Remove the progress meter.
   RetVal = SysCmd(acSysCmdRemoveMeter)

End Function

第三步:创建一新窗体frmTest,在frmTest中创建一个按钮cmdTest,在cmdTest的单击事件写下面的代码:
Private Sub cmdTest_Click()
'显示状态栏
Application.SetOption "Show Status Bar", True
Meter
End Sub



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助