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

时间:2008-08-04 13:27:00 

用过软件的朋友都知道,进度条是一个优秀软件的重要组成部分。

它的存在能够使用户及时掌握程序的运行进度,确认应用程序正常工作。可是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)/dmax<1 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
标签:进度,程序,asp
0
投稿

猜你喜欢

  • 禁用JavaScript脚本来复制网站内容

    2007-02-03 11:30:00
  • MySQL高级查询方法之记录查询

    2010-06-20 14:48:00
  • SQL Server 查询分析器快捷键集合

    2007-08-17 09:42:00
  • 细品Dreamweaver MX 2004内建FW技术

    2010-09-02 12:38:00
  • 如何才能有效对抗MySQL数据库的解密高手

    2009-05-22 18:21:00
  • 透明数据加密(TDE)库的备份和还原

    2012-07-21 14:44:08
  • 如何利用SQL Server数据库快照形成报表

    2009-01-15 11:55:00
  • MySQL的root帐户密码重置方法

    2007-08-24 15:53:00
  • 在ASP应用程序中加入智能搜索

    2007-09-18 13:15:00
  • Google Chrome的hack写法以及CSS的支持程度

    2008-09-04 12:28:00
  • 让字体美起来

    2011-06-14 09:50:21
  • 從無到有實現一個xml數據庫登錄驗証

    2008-09-05 17:12:00
  • 使用SQL语句快速获取SQL Server数据字典

    2009-01-08 16:31:00
  • 教你如何升级SQL Server数据库系统

    2009-01-19 14:42:00
  • Dreamweaver2004 中文乱码解决方案

    2007-01-31 10:20:00
  • 全新极速CSS选择器引擎whiz

    2009-08-30 15:48:00
  • 用ASP显示ACCESS数据库的GIF图象

    2008-11-16 18:09:00
  • MySQL修改数据库大小

    2011-01-13 20:00:00
  • 一个较新的ASP后门服务端实现代码

    2011-02-16 10:41:00
  • Oracle数据库安全策略分析(二)

    2010-07-31 13:04:00
  • asp之家 网络编程 m.aspxhome.com