将FlashVars与Flex 3一起使用

时间:2009-06-01 22:26:43

标签: flex flash actionscript-3 flex3

我正在尝试将参数从HTML-land传递到Flex-3 Flash-land,并且似乎无法使其工作。这就是我所拥有的(基本上是默认模板,使用FlashVars修改):

<noscript>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
        id="${application}" width="${width}" height="${height}"
        codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
        <param name="movie" value="${swf}.swf" />
        <param name="quality" value="high" />
        <param name="bgcolor" value="${bgcolor}" />
        <param name="allowScriptAccess" value="sameDomain" />

    <param name="flashVars" value="userID=foo&assignmentID=1"/>


        <embed src="${swf}.swf" quality="high" bgcolor="${bgcolor}"
            width="${width}" height="${height}" name="${application}" align="middle"
            play="true"
            loop="false"
            quality="high"
            allowScriptAccess="sameDomain"
            type="application/x-shockwave-flash"
            pluginspage="http://www.adobe.com/go/getflashplayer"
           flashVars="userID=foo&assignmentID=1">
        </embed>
</object>
</noscript>

这是ActionScript(在应用程序的creationComplete事件被触发后调用):

function initApp() : void
{
    // default params
    userID = Application.application.parameters.userID;
    assignmentID = Application.application.parameters.assignmentID;
    if (userID == null || assignmentID == null)
    {
        Alert.show("I didn't get any params!", "Error");
    }
}

有人知道出了什么问题吗?我已经尝试了几种这样的排列而没有运气。 (Firefox 3,OS-X,Flash Player 9 FWIW)

谢谢!

2 个答案:

答案 0 :(得分:3)

我认为你想在.swf之后设置查询参数。试试

 <embed src="${swf}.swf?userID=foo" quality="high" bgcolor="${bgcolor}"

答案 1 :(得分:0)

尝试“FlashVars”而不是“flashVars”。