程序忙时,GIF动画被暂停解决思路

程序忙时,GIF动画被暂停
各位:我用vfp9sp2+Xp做一个软件时,当读取一个比较大的SQL表时,想用一个进度条的动画(gif格式动画),来显示正在执行操作,而非死机,现有如下疑问:

1.SQLEXEC(nHandle,"SELECT * from 表名 WHERE 条件","Temp")时,能不能取得读取的进度,用来做进度条?

2.对于疑问1,以我现在的水平理解是不能,所以,我用了一个循环的gif动画来展现进度,读取完成后再隐藏这个动画。于是,新的问题又产生了:在执行1中的语句时,gif动画被暂停了,直到语句执行完毕才继续。

各位大侠有解决这个问题的方案吗?

------解决方案--------------------
SQL code
*-- vfp9.0(sp2 7329),XP(sp2)
*-- 连接代码略去

lcSQLstr="select * from 测试表"    && 这个测试表数据量尽量大一些

SQLSetprop(gnConnHandle,"Asynchronous",.T.)    && 异步执行
nResult=SQLExec(gnConnHandle,lcSQLstr,"temp")
Do While nResult=0    && 正在抓取
    If Used('temp') and !CursorGetProp("FetchIsComplete")    && 抓取过程尚未完成
        ?nResult,CursorGetProp("RecordsFetched")            && 抓取进度
    Endif    
    nResult=SQLExec(gnConnHandle,lcSQLstr,"temp")
*    Doevents
Enddo
SQLSetprop(gnConnHandle,"Asynchronous",.F.)    && 同步执行
?nResult,'完成'    && 抓取结束,结果大于0
Browse