中国设计联盟
联网
平面设计 画册 VI欣赏 包装 CG-插画 搜索 个人网页 Alexa排名 CSS 建站资源 下载专区 JS特效 品牌服装 服装院校 专题欣赏 SEO 图标欣赏 专题
网站建设 域名注册 虚拟主机 广州网站设计 域名注册 广州网站建设 上海网站建设 虚拟主机 广州网页设计  虚拟主机 域名注册 acg王国 ACG玩家
求创科技
网站建设
中国福网
招聘求职
中国互联
艺魂宝库网
中资源
当前位置:网络学院首页 >> 编程开发 >> asp >> 在ASP处理程序时,进度显示

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

来源:中国设计秀    作者:    点击:24     加入收藏    发表评论
0
顶一下
  用过软件的朋友都知道,进度条是一个优秀软件的重要组成部分。
 
  它的存在能够使用户及时掌握程序的运行进度,确认应用程序正常工作。可是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这些请参考MSDN帮助
2007-09-18 09:33:00    出处:
Google
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明 | 网站公告 | 友情链接 | 留言 | 旧版入口