<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      在ASP處理程序時顯示進度

      [摘要]用過軟件的朋友都知道,進度條是一個優秀軟件的重要組成部分。 它的存在能夠使用戶及時掌握程序的運行進度,確認應用程序正常工作?墒茿SP中似乎沒有上述標準控件,控制起來也比較麻煩。 那幺如何實現進度條呢? 以下是本人的一些觀點(僅供參考) 我們通常在用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 "<img src=""http://edu.chinaz.com/Get/Program/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=""http://edu.chinaz.com/Get/Program/images/delay1.jpg"">")  
      next 
      Response.Write "<BR>"  
      Response.Flush  
      end sub  
      最后請注意 
      這里需要用到緩存技術 
      response.buffer=true; 
      response.flush; 
      response.end 
      這些請參考MSDN幫助



      日韩精品一区二区三区高清