プロプログラマ

プログラマーを職業としてます。 Flex,Air,C#,Oracle,HTML+JSの言語ノウハウを中心に情報発信していきます

Labelの3点リーダ(…)表示位置が気に入らないとき

Labelに文字が入りきらないときに、3点リーダ(…)という3つの点で表示を省略することができます。

<s:Label text="▼ラベルで指定した時" fontWeight="bold"/>
<s:BorderContainer minHeight="0">
<s:Label id="labelDisplay" width="100" height="20" verticalAlign="middle"
maxDisplayedLines="-1" lineBreak="toFit" left="0" right="0" top="0" bottom="0"
text="aaabbb-ccc@dummy.co.jp"/>
</s:BorderContainer>

指定は簡単なのですが、思った位置で省略してくれない場合があります。
そんな手前で改行してくれるなよと。

 

Labelで何とかしようと思ったのですが、なかなか都合よく省略してくれないので、代わりにRichTextを使ってみました。

<s:BorderContainer minHeight="0">
<s:RichText left="0" right="0" top="0" bottom="0" verticalAlign="middle"
width="100" height="20"
breakOpportunity="any" maxDisplayedLines="-1" lineBreak="toFit"
text="aaabbb-dev@dummy.co.jp"/>
</s:BorderContainer>

 

 

RichTextだと、”breakOpportunity“プロパティというのが使えます。
TextAreaでも使えます。

このプロパティは、テキストを複数の行に分割する場合に、どの文字を使用するかを指定するものです。
1行指定で、3点リーダ表示をしたい場合にもこの指定が有効です。

この指定をすれば、単語単位での改行判定をしないようにできるので、極力ギリギリのいちまで文字を表示できます。

 

 

== ランキングに参加しています。ぜひクリックお願いします ==

プログラム ブログランキングへ
にほんブログ村 IT技術ブログへ
にほんブログ村

, , , ,

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください