在ASP處理程序時顯示進度
來源:易賢網(wǎng) 閱讀:715 次 日期:2015-01-09 11:37:04
溫馨提示:易賢網(wǎng)小編為您整理了“在ASP處理程序時顯示進度”,方便廣大網(wǎng)友查閱!

用過軟件的朋友都知道,進度條是一個優(yōu)秀軟件的重要組成部分。

它的存在能夠使用戶及時掌握程序的運行進度,確認應(yīng)用程序正常工作??墒茿SP中似乎沒有上述標準控件,控制起來也比較麻煩。

那幺如何實現(xiàn)進度條呢?

以下是本人的一些觀點(僅供參考)

我們通常在用ASP處理程序(指的是寫文件或操作數(shù)據(jù)庫)的時候,會專門用一個頁面(*.asp)去處理或控制這些程序,當(dāng)處理完畢的時候再跳轉(zhuǎn)到顯示頁面。這時我們就可以通過這些處理頁面顯示進度條。其方法是根據(jù)程序處理的進度依次畫一百張同樣的圖形(如有顏色的矩形),從而形成進度條。其效果與用其它編程工具所實現(xiàn)的基本相似

以下是一些Source,希望能夠給各位有個啟發(fā)。

response.buffer=true

dim lostnum

dim shownum

delayshow(dstep,dmax)過程是用于顯示多少img(畫多少進度)

其中dmax為表示整個程序需要處理多少(dmax)步才能完成整個處理程序.

其中dstep表示當(dāng)前處理的步驟占整個處理過程中的分量,用數(shù)量表示。

變量lostnum的存在是由于dmax過大(比如10000),而dstep過小(比如1)造成的。如果調(diào)用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

//判斷當(dāng)要處理的東西連1%都沒有時,不畫img同時用變量lostnum存放未畫的處理總數(shù),便于下次調(diào)用本過程時在處理。

lostnum=lostnum+dtemp

else

for ccc=1 to fix((dstep*total)/dmax) //取整數(shù)

Response.Write "

"

next

Response.Flush //將緩存里的東西(圖片)顯示出來

//變量shownum用于存放目前已經(jīng)畫的img

shownum=shownum+fix((dstep*total)/dmax)

lostnum=0

end if

end sub

//由于算法的問題,主要是取余造成不能完全畫100次,這時就需要

過程showlost()將余下未畫的img,通通顯示處理,實現(xiàn)進度條的等長

sub showlost()

for ccc=1 to (100-shownum)

Response.Write ("

")

next

Response.Write "

"

Response.Flush

end sub

最后請注意

這里需要用到緩存技術(shù)

response.buffer=true;

response.flush;

response.end

這些請參考MSDN幫助

更多信息請查看IT技術(shù)專欄

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機網(wǎng)站地址:在ASP處理程序時顯示進度

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)