1

次のように、RichEditableTextのtextFlowを使用するFlex4mxmlファイルを使用しています。

<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:正常にコンパイルされて実行されましたが、結果は次のようになりました。テキストも表示されませんでした。

これを達成する方法はありますか?または、の内部からactionscript関数を呼び出すことができない場合は<s:p> ... </s:p>、インライン(省略形と呼ばれることもあります)のif / then / elseactionscriptステートメントを使用してこれを実現できますか?

コメントありがとうございます。

4

1 に答える 1

2

テキストを動的に追加できます。このリンクを参照してくださいhttp://blog.flexexamples.com/2009/10/09/dynamically-adding-paragraphs-to-a-spark-richtext-control-in-flex-4/

于 2012-06-20T01:32:28.570 に答える