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

[示例]用ESC键来中断程序的运行

时 间:2009-11-09 16:04:02
作 者:Dev Ashish,竹笛(译)   ID:8  城市:上海  QQ:2851379730点击这里给张志发消息
摘 要:   当我们在某个时间,需要中断程序的运行(如:导入大量数据时等)时,这里我们可以使用GetAsyncKeyState的API来达到目的。
正 文:

示例下载:点击下载此附件

代码如下:

'************ Code Start ***********
' This code was originally written by Dev Ashish.
' It is not to be altered or distributed,
' except as part of an application.
' You are free to use it in any application,
' provided the copyright notice is left unchanged.
'
' Code Courtesy of
' Dev Ashish

Private Declare Function apiGetAsyncKeyState Lib "user32" _
        Alias "GetAsyncKeyState" _
        (ByVal vKey As Long) _
        As Integer
       
Private Const VK_ESCAPE = &H1B

Function fBreakInCode()
'需要引用DAO3.6,否则编译出错
Dim boolEsc As Boolean
Dim rs As DAO.Recordset
Dim i As Double

    Set rs = CurrentDb.OpenRecordset("SomeTable", dbOpenDynaset)
    For i = 1 To 50000
        If apiGetAsyncKeyState(VK_ESCAPE) Then
              If MsgBox("您要结束程序运行吗?", _
                         vbYesNo, "提示") = vbYes Then
                          Exit For
              End If
        End If
        With rs
            .AddNew
                !Field1 = i
                !Field2 = i * 2
                !Field3 = i * 3
            .Update
        End With
    Next
    rs.Close
    Set rs = Nothing
    MsgBox "运行结束.  已添加 " & i-1 & " 条记录!"
End Function



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

常见问答:

技术分类:

相关资源:

专栏作家

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