在ASP处理程序时显示进度
来源: 阅读:802 次 日期:2014-10-11 10:44:47
温馨提示: 小编为您整理了“在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)/dmax<1 then

//判断当要处理的东西连1%都没有时,不画img同时用变量lostnum存放未画的处理总数,便于下次调用本过程时在处理。

lostnum=lostnum+dtemp

else

for ccc=1 to fix((dstep*total)/dmax) //取整数

Response.Write "

"

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 ("

")

next

Response.Write "

"

Response.Flush

end sub

最后请注意

这里需要用到缓存技术

response.buffer=true;

response.flush;

response.end

这些请参考MSDN帮助

更多信息请查看IT技术专栏

更多信息请查看网络编程
手机网站地址:在ASP处理程序时显示进度
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map