2013-05-17 47 views
3

我正在尝试加载在弹出窗口中打开的iFrame内部的pdf。弹出显示,但它没有加载PDF。 这里是我的代码-Main.mxmliFrame内部不加载弹出窗口

<![CDATA[ 
     import mx.controls.Alert; 
     import mx.events.FlexEvent; 
     import com.google.code.flexiframe.IFrame; 
     import mx.managers.PopUpManager; 

     protected function dgGrid_itemDoubleClick(event:Event):void { 
      var win : Window = new Window(); 
      PopUpManager.addPopUp(win,this,true); 
      PopUpManager.centerPopUp(win); 
     } 

现在Window.mxml

 <?xml version="1.0" encoding="utf-8"?> 
     <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" 
      layout="vertical" width="742" height="452" 
      title="PopUp Window" horizontalAlign="center" 
      xmlns:flexiframe="http://code.google.com/p/flex-iframe/" 
      xmlns:components="components.*" 
      showCloseButton="true" 
      close="closeWindow(event);" > 

<mx:Script> 
    <![CDATA[ 

     import mx.core.IFlexDisplayObject; 
     import mx.events.CloseEvent; 
     import mx.managers.PopUpManager; 

     private function closeWindow(e:CloseEvent):void { 
      PopUpManager.removePopUp(e.target as IFlexDisplayObject); 
     } 
    ]]> 
</mx:Script> 
<flexiframe:IFrame id="iframe" source="C:\\test.pdf" 
     backgroundColor="blue" width="100%" height="100%" visible="true"/> 

能否请您提出什么错呢?

+0

您可以使用[StageWebView](http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/flash/media/StageWebView.html)而不是flex-iframe。 –

+0

嗨杰森,谢谢你的回复!我认为StagewebView用于AIR,但我想在Web项目中使用。任何建议? – Sam

+0

对不起,我误解了你的标签太快了。另外值得注意的是这似乎是Flex 3. –

回答

0

你需要去您的index.template.html文件,并把下面的参数在SWF:

params.wmode= "opaque"; 

请记住,虽然这设置可能会解决许多与IFrame的问题但它确实会导致某些Flash版本和浏览器出现性能问题。使用IFrame需要您自担风险。