高傲的活着 发表于 2011-12-21 08:44

使用SWFLoader来加载一个SWF

<P><FONT color=#f00000>【问题】</FONT></P>
<P><FONT color=#0000f0>在Flex运行的时候,加载外部的SWF文件,它可以是Flex或者是CS创建的,这个不是很重要。</FONT></P>
<P><FONT color=#f00000>【方法】</FONT></P>
<P><FONT color=#0000f0>通过SWFLoader组件来加载外部的SWF。</FONT></P>
<P>以下例子加载了外部的一个<SPAN lang=EN-US XML:LANG="EN-US">SWF</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">到</SPAN></SPAN><SPAN lang=EN-US XML:LANG="EN-US">Canvas</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">容器里,同时</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Canvas</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">又在</SPAN><SPAN lang=EN-US XML:LANG="EN-US">TabNavigator</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里。</SPAN><SPAN lang=EN-US XML:LANG="EN-US">SWFLoader</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</SPAN><SPAN lang=EN-US XML:LANG="EN-US">source</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">属</SPAN>性表示外部</SPAN><SPAN lang=EN-US XML:LANG="EN-US">SWF</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的路径。</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Sub1</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是用</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Flex3</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">创建的,</SPAN><SPAN lang=EN-US XML:LANG="EN-US"><SPAN lang=EN-US XML:LANG="EN-US">Sub2</SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是用</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Flash CS3</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">创建的。</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></P>
<DIV id=codeText class=codeText>
<OL style="PADDING-BOTTOM: 5px; MARGIN: 0px 1px 0px 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 5px" class=dp-css>
<LI><SPAN style="COLOR: #000000"><SPAN style="COLOR: #0000cc">&lt;</SPAN><SPAN style="COLOR: #0000cc">?</SPAN>xml version<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"1.0"</SPAN> encoding<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"utf-8"</SPAN><SPAN style="COLOR: #0000cc">?</SPAN><SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI><SPAN style="COLOR: #0000cc">&lt;</SPAN><SPAN style="COLOR: #0000ff">s</SPAN><SPAN style="COLOR: #0000cc">:</SPAN>Application xmlns<SPAN style="COLOR: #0000cc">:</SPAN>fx<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"http://ns.adobe.com/mxml/2009"</SPAN> <BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns<SPAN style="COLOR: #0000cc">:</SPAN><SPAN style="COLOR: #0000ff">s</SPAN><SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"library://ns.adobe.com/flex/spark"</SPAN> <BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns<SPAN style="COLOR: #0000cc">:</SPAN>mx<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"library://ns.adobe.com/flex/mx"</SPAN> minWidth<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"955"</SPAN> minHeight<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"600"</SPAN><SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>TabNavigator resizeToContent<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"true"</SPAN> paddingTop<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"0"</SPAN><SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>Canvas<SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>SWFLoader source<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"assets/index.swf"</SPAN><SPAN style="COLOR: #0000cc">/</SPAN><SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN><SPAN style="COLOR: #0000cc">/</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>Canvas<SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>Canvas<SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>SWFLoader source<SPAN style="COLOR: #0000cc">=</SPAN><SPAN style="COLOR: #ff00ff">"assets/sun.swf"</SPAN><SPAN style="COLOR: #0000cc">/</SPAN><SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN><SPAN style="COLOR: #0000cc">/</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>Canvas<SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI>&nbsp;&nbsp;&nbsp;&nbsp;<SPAN style="COLOR: #0000cc">&lt;</SPAN><SPAN style="COLOR: #0000cc">/</SPAN>mx<SPAN style="COLOR: #0000cc">:</SPAN>TabNavigator<SPAN style="COLOR: #0000cc">&gt;</SPAN><BR></LI>
<LI><SPAN style="COLOR: #0000cc">&lt;</SPAN><SPAN style="COLOR: #0000cc">/</SPAN><SPAN style="COLOR: #0000ff">s</SPAN><SPAN style="COLOR: #0000cc">:</SPAN>Application<SPAN style="COLOR: #0000cc">&gt;</SPAN></SPAN></LI></OL></DIV>
<P class=MsoNormal><FONT color=#f00000><SPAN lang=EN-US XML:LANG="EN-US">SWFLoader</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件同样可以加载嵌入到</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Flex</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序里的</SPAN><SPAN lang=EN-US XML:LANG="EN-US"><SPAN lang=EN-US XML:LANG="EN-US">SWF,</SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这时候我们用</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Embed</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">方</SPAN>法。在下面的里子里,</SPAN><SPAN lang=EN-US XML:LANG="EN-US">Sub2.swf</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">会被编译到主程序里。</SPAN></FONT></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></SPAN><SPAN class=code><SPAN style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt" lang=EN-US XML:LANG="EN-US"><FONT color=#f00000>&lt;mx:SWFLoader source="@Embed('assets/Sub2.swf')"/</FONT></SPAN></SPAN></SPAN></P>
<P><FONT color=#0000f0>参考资料</FONT></P>
<P><A href="http://blog.sina.com.cn/s/blog_4bfac6ef0100c7n1.html" target=_blank>http://blog.sina.com.cn/s/blog_4bfac6ef0100c7n1.html</A></P>
页: [1]
查看完整版本: 使用SWFLoader来加载一个SWF