posts - 495,comments - 227,trackbacks - 0
          http://my.oschina.net/Boder/blog/933

          //主應用loadFp.mxml 

          <!--l version="1.0" encoding="utf-8-->

              
                  
          <!--[CDATA[
                      
          import com.magReader.FlashPaperLoader;
                      
          //flashpaper加載器
                      private var magReader:FlashPaperLoader;

                      
          private function initType():void
                      {
                          var urlStr:String 
          = "Fpl.swf?url=template.swf";
                          magReader 
          = new FlashPaperLoader();
                          magReader.source 
          = urlStr;
                          magReader.visible 
          = false;
                          magContainer.addChild(magReader);
                          
          //loadingBar.visible = true;
                          magReader.addEventListener(FlashPaperLoader.FLASH_PAPER_LOADED,fpLoaded);
                      }
                      
          //flashpaper已經加載完成
                      private function fpLoaded(evt:Event):void
                      {
                          
          //trace("magContainer width = " + magContainer.width + " magContainer height = " + magContainer.height);
                          magReader.setSize(magContainer.width,magContainer.height);
                          magReader.visible 
          = true;
                          
          //loadingBar.visible = false;
                          
          //去掉進度條
                          
          //magContainer.removeChild(loadingBar);
                          
          //刪除事件偵聽
                          magReader.removeEventListener(FlashPaperLoader.FLASH_PAPER_LOADED,fpLoaded);
                      }
                      
          /**
                       *
                       * 改變容器顯示大小
                       * 
          */
                      
          public function changSize():void
                      {
                          
          if(magReader != null)
                          {
                              magReader.setSize(magContainer.width,magContainer.height);
                          }
                      }
                  ]]
          -->
              

              

              


          //flash cs3代碼,生成所需要的fpl.swf

          import flash.display.Stage;
          Stage.align 
          = "LT"
          //Stage.scaleMode = "showAll"; 
          var url = "template.swf";
          var fp;
          //localConnection通訊接口
          var caller:LocalConnection = new LocalConnection();
          var sender:LocalConnection 
          = new LocalConnection();
          caller.connect(
          "_flashpaperloader");
          caller.allowDomain(
          "*");
          sender.allowDomain(
          "*");
          Security.allowDomain(
          "*");
          //設置頁面
          //caller.setPage = function(n:Number)
          //{
                  
          //fp.setCurrentPage(n);
          //}

          //設置大小
          caller.setPaperSize = function(w:Number,h:Number)
          {
                  trace(
          "fpLoader width=" + w + " height =" + h) ;
                  fp.setSize(w,h);
          }
          //設置縮放
          //caller.setCurrentZoom = function(zoom:Object)
          //{
                  
          //fp.setCurrentZoom(zoom);
                  
          //sendCurrentZoom();
          //}
          //設置下一頁
          //caller.nextPage = function()
          //{
                  
          //var p:Number = fp.getCurrentPage();
                  
          //if(p + 1 <= fp.getNumberOfPages())
                          
          //fp.setCurrentPage(p + 1);
          //}

          //設置上一頁
          //caller.prePage = function()
          //{
                  
          //var p:Number = fp.getCurrentPage();
                  
          //if(p - 1 > 0)
                          
          //fp.setCurrentPage(p - 1);
          //}


          //卸載
          caller.unload = function()
          {
                  caller.close();        
                  caller 
          = null;
                  sender 
          = null;
                  fp.destroy();
                  fp 
          = null;
                  unloadAndStop();
                  paper.unloadMovie();
                  paper 
          = null;
          }


          // function: loadFlashPaper
          // ------------------------
          // Load FlashPaper document, size it, 
          // Parameters:
          //   path_s: Path of SWF to load
          //  dest_mc: Movie clip to hold the imported SWF
          //  width_i: New size of the dest MC
          // height_i: New size of the dest MC
          // loaded_o: (optional) Object to be notified that loading is complete
          function loadFlashPaper(path_s, dest_mc, loaded_o) {
                  var intervalID 
          = 0;
                  var loadFunc 
          = function(){
                          trace(
          "加載開始.");
                          dest_mc._visible 
          = false;                
                          fp 
          = dest_mc.getIFlashPaper();
                          
          if (!fp) { 
                                  
          return
                          } 
          else if (!fp.setSize(0,0)){ 
                                  trace(
          "沒有設置窗口大小");
                                  
          return
                          } 
          else {
                                  trace(
          "flashPaper加載成功了");
                                  clearInterval(intervalID);                
                                  
          //var pages_i = fp.getNumberOfPages();
                                  
          //paper.toolbar_mc.brandClip_mc.swapDepths(1000); 
                          
          //paper.toolbar_mc.brandClip_mc.removeMovieClip(); 
                                  
          //ctrlHolder_mc.swapDepths(_root.control_mc);
                                  dest_mc._visible = true;                        // Now show the document
                                  
          //_root.control_mc._visible = true;        // Now show the controller
                                  loaded_o.onLoaded(fp);
                          }
                  }
                  intervalID 
          = setInterval(loadFunc, 100);
                  dest_mc.loadMovie(path_s);
          }


          // function: onLoaded()
          // ------------------------
          // Called once loading is complete
          // Parameters:
          //   fp: FlashPaper interface (returned by getIFlashPaper())
          function onLoaded() {
                  
          // We can now call the FlashPaper API functions.
                  
          // Remove the standard user interface features:
                  
          //fp.showUIElement("PrevNext", false);
                  fp.showUIElement("Print"false);
                  
          //fp.showUIElement("Find", false);
                  
          //fp.showUIElement("Tool", false);
                  
          //fp.showUIElement("Pop", false);
                  
          //fp.showUIElement("Zoom", false);
                  
          //fp.showUIElement("Page", false);
                  
          //fp.showUIElement("Overflow", false);
                  
          //fp.enableScrolling(false);
                  
          // Some additional API features (here commented out):
                  
                  fp.setCurrentZoom(
          100);
                  
          //sendCurrentZoom();
                  sender.send("_flexloader","fpLoaded");
          }

          // Hide the navigation controller until after the document is loaded:
          //_root.control_mc._visible = false;  

          // Create movie clip to hold the document:
          var paper = this.createEmptyMovieClip("paper",100);
          // Create movie clip to exchange the depth with the navigation controller clip:
          //var ctrlHolder_mc = this.createEmptyMovieClip("ctrlHolder",200);

          // Position the document clip on the stage:
          paper._x = 0;
          paper._y 
          = 0;

          // Load the FlashPaper document:
          loadFlashPaper(url, paper, this);

          posted on 2010-04-06 14:02 SIMONE 閱讀(928) 評論(0)  編輯  收藏 所屬分類: JAVAflash
          主站蜘蛛池模板: 罗田县| 杭锦后旗| 河曲县| 潮安县| 龙州县| 壶关县| 阿瓦提县| 平泉县| 屏东市| 铜梁县| 恭城| 佛坪县| 红桥区| 八宿县| 麟游县| 正镶白旗| 星子县| 雅安市| 开江县| 道孚县| 全南县| 文水县| 英吉沙县| 三穗县| 江山市| 电白县| 东乌| 玉山县| 万全县| 竹山县| 定州市| 出国| 清远市| 文安县| 逊克县| 禄丰县| 宁强县| 伊金霍洛旗| 新乡县| 波密县| 杨浦区|