从AS3 / OpenLaszlo中实例化Flex应用程序

时间:2012-04-23 14:15:20

标签: actionscript-3 flex mxml openlaszlo

我有一个OpenLaszlo / AS3应用程序(olapp.lzx)和一个Flex应用程序(flexapp.swc)。 我想在olapp.lzx中包含flexapp.swc,如下所示:

olapp.lzx (AS3):
===============
...
var flexapp:Sprite = new FlexApp();
flexapp.doSomething();
...

flexapp.swc是从这个mxml编译的:

flexapp.mxml:
============
<?xml version="1.0"?>
<!-- intro/FlexApp.mxml -->
<mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx">
    <mx:ComboBox>
        <mx:dataProvider>
            <s:ArrayList>
                <fx:String>AK</fx:String>
                <fx:String>AL</fx:String>
                <!-- Add all other states. -->
            </s:ArrayList>
        </mx:dataProvider>
    </mx:ComboBox>
</mx:Application>

当我将flexapp.mxml编译为swf时,它运行良好,但是从AS3实例化 失败(TypeError:错误#2007)。我研究过mxml-&gt; as3集成不是常用的方法,但对于这个特殊情况我需要。我不得不承认我还不熟悉Flex,只有OpenLaszlo。什么应该在flexapp.mxml中更改?谢谢!

1 个答案:

答案 0 :(得分:0)

OpenLaszlo不正式支持将Flash SWF应用程序导入其中。唯一的例外是编码为SWF格式的电影。

(如果你的应用程序在Flash 9(SWF9)或更高版本中,那么SWF电影需要以AVM2格式编码,对于Flash 8或更低版本,AVM1编解码器。)

如果您尝试将除简单SWF影片以外的SWF加载到OpenLaszlo&lt; view&gt;然后结果将是不可预测的。