テキストの書式設定

Posted by muchag | ActionScript 2.0,ActionScript 3.0 | 2010-06-20 (日) 14:40:33

Flashでは、以下の3種のテキストが存在する。

  1. ダイナミックテキスト-Actionscriptにて制御可能。
  2. 入力テキスト-Actionscriptにての制御の他、ユーザからの入力に対応。
  3. 静止テキスト-パブリッシュ以降制御不能。

3は制御不能なので、ここでは1,2について。

書式設定をしたい場合は
まず TextFormat オブジェクト(クラス)のインスタンスを生成して
そのインスタンスのプロパティに代入。

ActionScript

  1. var text_format = new TextFormat();
  2. text_format.size = 12;      // 文字のポイントサイズ
  3. text_format.color = 0xFF0000;   // 文字の色

で、最後に設定を実行するわけだが
既存のテキストに設定する場合と
新たなテキストに設定する場合で
命令が異なる。

既存のテキストに設定する場合

「既存のテキスト」とは、既にステージ上に配置されているテキストフィールド。

ActionScript

  1. my_txt.setTextFormat(text_format);

ただ~し! ちょっと気になることが。

textFormat の null 以外のプロパティのみがテキストフィールドに適用されます。
textFormat で null に設定されているプロパティは適用されません。
デフォルトで、新しく作成された TextFormat オブジェクトのプロパティはすべて null に設定されます。

<引用元>
ActionScript 2.0 リファレンスガイド > ActionScript クラス > TextField > setTextFormat (TextField.setTextFormat メソッド)

2.0にのみ記述があり、3.0にはないのだが
「新しく作成したらデフォルトで全て null 」
ってことは・・・ステージ上で設定したものは全て無効で、
必要なプロパティは全て設定しなさなければいけないってことかな?

とビビリながら試してみたところ、必要なものだけでよさそう。

新たなテキストに設定する場合

「新たなテキスト」とは、Actionscript上で新たに設置されたテキストフィールド。
createTextFieldメソッドと併用する。

Actionscript 2.0 と 3.0 で異なる。

[as2 num=4]my_txt.setNewTextFormat(text_format);[/as2]

ActionScript 3

  1. my_txt.defaultTextFormat = text_format;

書式の違いは
setNewTextFormat はメソッド で
defaultTextFormat はプロパティ ということだ。

ActionScript 2.0,ActionScript 3.0 | 2010-06-20 (日) 14:40:33 |

コメントはまだありません »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment