在Rich Text中以粗体显示部分文本

时间:2011-11-12 22:19:10

标签: flex flex4 flex4.5

如何使spark.components.RichText的某些部分变为粗体?

在我的Flash / ActionScript 3程序中,我一直只使用 TextField htmlText 属性,并将其设置为1 2< b> 3< / b> - 但现在我正在尝试将我的程序移植到Flex 4.5。

更新

我正在尝试:

myRichtText.textFlow = TextConverter.importToFlow('1 2 3 <s:span fontWeight="bold">4 5</s:span>', TextConverter.TEXT_LAYOUT_FORMAT);

但没有显示任何内容。我不想使用RichEditableText或TextArea。

4 个答案:

答案 0 :(得分:2)

 var str:String=rc.text.toString().substr(2,1);
 var str2:String=rc.text.toString().substr(0,2);
         str=str2+"<b>"+str+"</b>";
         rc.textFlow = TextConverter.importToFlow(str, TextConverter.TEXT_FIELD_HTML_FORMAT);

富文本

<s:RichText id="rc" text="123"/>

我尝试过这种方式..在str中,您应该在这种情况下使用html文本12<b>3</b>您可以通过Mitul Golakiya提供的链接等不同方法进行尝试。 希望这会对你有帮助......

答案 1 :(得分:0)

以下是解决方案......

您应该使用TextConverter.importToFlow()...

http://blog.flexexamples.com/2009/10/06/displaying-html-formatted-text-in-a-spark-richtext-control-in-flex-4/

答案 2 :(得分:0)

您可能希望使用RichEditableText,其方法为setFormatOfRange()

答案 3 :(得分:0)

这样做:

myRichtText.textFlow = TextConverter.importToFlow('1 2 3 <b>4 5</b>',  TextConverter.TEXT_FIELD_HTML_FORMAT);