Flex / AS3:如何从textFlow中调用ActionScript函数?

时间:2012-06-20 01:16:57

标签: actionscript-3 flex flex4

我正在使用一个Flex 4 mxml文件,该文件使用textFlow for RichEditableText,如下所示:

<s:RichEditableText>
    <s:textFlow>
        <s:TextFlow>
            <s:p>Here is your result: {myVariable}</s:p>
        </s:TextFlow>
    </s:textFlow>
</s:RichEditableText>

myVariable从middleTier返回,等于字符“a”,“b”或“c”。但是因为我需要根据字符的内容显示消息,所以我想调用一个actionscript函数来解码myVariable。例如:

private function myFunction(myVariable):String {
  if (myVariable=="a") 
      myMsg = "You selected letter a";
  else if (myVariable=="b")
      myMsg = "You selected letter b";
  else
      myMsg = "You selected letter c";
  return myMsg;
}

我不知道该怎么做,但我尝试了以下内容:

<s:RichEditableText>
    <s:textFlow>
        <s:TextFlow>
             <s:p>Here is your result: {myFunction(myVariable)}</s:p>
        </s:TextFlow>
    </s:textFlow>
</s:RichEditableText>

虽然它编译得很好并且运行,结果是 - 没有显示任何内容,甚至没有显示Here is your result:文本。

知道怎么做到这一点?或者,如果无法从<s:p> ... </s:p>内部调用actionscript函数,那么可以使用内联(有时称为速记)if / then / else actionscript语句来实现吗?

感谢您提出任何意见。

1 个答案:

答案 0 :(得分:2)