• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    在ASP处理程序时显示进度
    用过软件的朋友都知道,进度条是一个优秀软件的重要组成部分。
    它的存在能够使用户及时掌握程序的运行进度,确认应用程序正常工作。可是ASP中似乎没有上述标准控件,控制起来也比较麻烦。
    那幺如何实现进度条呢?
    以下是本人的一些观点(仅供参考)
    我们通常在用ASP处理程序(指的是写文件或操作数据库)的时候,会专门用一个页面(*.asp)去处理或控制这些程序,当处理完毕的时候再跳转到显示页面。这时我们就可以通过这些处理页面显示进度条。其方法是根据程序处理的进度依次画一百张同样的图形(如有颜色的矩形),从而形成进度条。其效果与用其它编程工具所实现的基本相似
    以下是一些Source,希望能够给各位有个启发。
    response.buffer=true
    dim lostnum
    dim shownum
    delayshow(dstep,dmax)过程是用于显示多少img(画多少进度)
    其中dmax为表示整个程序需要处理多少(dmax)步才能完成整个处理程序.
    其中dstep表示当前处理的步骤占整个处理过程中的分量,用数量表示。
    变量lostnum的存在是由于dmax过大(比如10000),而dstep过小(比如1)造成的。如果调用delayshow(1,10000)势必不可能画一次img,事实上
    delayshow(100,10000)才画一次,表示完成1%,因为100占10000的1%.
    sub delayshow(dstep,dmax)
    dim total //显示画面100张img
    dim dtemp //过渡变量
    total=100
    dtemp=dstep
    dstep=dstep+lostnum
    if (dstep*total)/dmax1 then 
    //判断当要处理的东西连1%都没有时,不画img同时用变量lostnum存放未画的处理总数,便于下次调用本过程时在处理。
    lostnum=lostnum+dtemp
    else
    for ccc=1 to fix((dstep*total)/dmax) //取整数
    Response.Write "img src=""../images/delay1.jpg"">" 
    next
    Response.Flush //将缓存里的东西(图片)显示出来
    //变量shownum用于存放目前已经画的img
    shownum=shownum+fix((dstep*total)/dmax) 
    lostnum=0
    end if
    end sub
    //由于算法的问题,主要是取余造成不能完全画100次,这时就需要
    过程showlost()将余下未画的img,通通显示处理,实现进度条的等长
    sub showlost()
    for ccc=1 to (100-shownum)
    Response.Write ("img src=""../images/delay1.jpg"">") 
    next
    Response.Write "BR>" 
    Response.Flush 
    end sub 

    最后请注意
    这里需要用到缓存技术
    response.buffer=true;
    response.flush;
    response.end
    这些请参考MSDN帮助
    上一篇:利用ASP实现事务处理的方法
    下一篇:大数量查询分页显示 微软的解决办法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    在ASP处理程序时显示进度 在,ASP,处理,程序时,程,序时,