Flex 3:同一标签/控件中的不同文本样式

时间:2009-01-20 11:37:50

标签: flex flex3

任何人都可以告诉我是否可以在单个标签控件中显示多种样式的文本。

e.g。我有一个标签

我希望文本以“英语”(它确实)的样式出现,但我希望文本的“th”不同(粗体,不同的颜色,等等)。

因此,简而言之问题是:是否存在以下HTML的flex等效项?

< p class =“english”> bro< span class =“highlight”> th< / span> er< / p>

如果没有,任何人都可以想到一个好的解决方法,不必将文本分成多个标签控件(从而使对齐成为一个噩梦)?

感谢任何可以提供帮助的人!

2 个答案:

答案 0 :(得分:1)

是的,请尝试以下

var la : Label;
la.htmlText = '<TEXTFORMAT LEADING="3"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="14" COLOR="#000000" LETTERSPACING="0" KERNING="1">what ever texst you wish</FONT><FONT FACE="Verdana"SIZE="18" COLOR="#848484" LETTERSPACING="0" KERNING="1">more text here</FONT></P></TEXTFORMAT>';

答案 1 :(得分:0)

是的,这是可能的。请查看在livedocs中的Label.htmlText文档,其中解释了如何在Label控件上设置标记,例如

<mx:Label>
    <mx:htmlText><![CDATA[This is an example of <b>bold</b> markup]]></mx:htmlText>
<mx:Label/>

Text.htmlText引用包含支持的标记的完整列表,并提供有关Paragraph和Span标记的详细信息:

  

段落标记

     

<p>标记会创建一个新段落。   必须将文本字段设置为多行文本字段才能使用此标记。   <p>标记支持以下属性:

     

align:指定段落中文本的对齐方式;有效值为left,right,justify和center。   class:指定由flash.text.StyleSheet对象定义的CSS样式类。

     

跨度标签
  <span>标记仅适用于CSS文本样式。   它支持以下属性:

     

class:指定由flash.text.StyleSheet对象定义的CSS样式类。

最终,有很多方法可以做你想做的事。