原理:在线程中调用pb数据窗口进行retrieve
pb代码:
// 动态库函数定义
function ulong pb_retrieve(datawindow dw,...) system library "easypj.dll" alias for "pb_retrieve"
function ulong pb_cancel(datawindow dw) system library "easypj.dll" alias for "pb_cancel"
// 查询按钮代码
st_s.text ='0'
timer(1)
pb_retrieve(dw_1)
// timer代码
long ll_zhs,ll_rt
ll_zhs = long(st_all.text)
if(ll_zhs = 0) then
timer(0)
else
st_s.text =string( long(st_s.text ) + 1)
ll_rt = dw_1.rowcount()
st_psd.text = string(ll_rt / long(st_s.text) )
st_sd.text = string( ll_rt - long(st_done.text) )
st_done.text = string(ll_rt)
st_sy.text = string(ll_zhs - ll_rt)
if ll_zhs = ll_rt then timer(0)
hpb_1.Position = ll_rt* 100 / ll_zhs
end if
效果:
datawindow后台检索