トップページ > Flash入門 > テキスト関係(1)
とりあえず,文字を表示するには“TextField”というものを使えばいいみたいです。 試しに文字を表示してみます。
package { import flash.display.Sprite; import flash.events.Event; //==================================================================== //text関係のクラスをすべて読み込む import flash.text.*; //==================================================================== //画面サイズと背景色,フレームレートを設定 [SWF(width="300", height="300", frameRate = "60", backgroundColor="0xffffcc")] public class Main extends Sprite { //main関数 public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } //コンストラクタ private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); // entry point //============================================================ //TextField "tf" を用意する var tf:TextField = new TextField(); //表示内容 tf.text = "TEXT" //表示する addChild(tf); //============================================================ } } }
TextFieldのオブジェクトを“tf”という名前で作り,そのフィールドの“text”の内容を編集します。 例のごとく,tfをaddChild()すれば画面に表示されます。Text関係のクラスは import flash.text.* として一括して読み込んでいます。
TextFieldの設定可能なプロパティの中で,よく使いそうなものをまとめました。 文字のフォントなどの設定は別の“TextFormat”というクラスで設定する必要があります (次ページ)。 TextFieldとして設定できる項目は,テキストを表示する枠自体のプロパティという感じになっています。
プロパティ名 | 説明 | 使用例 |
---|---|---|
text | 表示する文字 | tf.text = "TEXT" |
background | 背景を塗りつぶしか,透過させるか(falseで透過) | tf.background = false |
backgroundColor | 背景色,16進数で設定する(background = trueの時のみ有効) | tf.backgroundColor = 0xE0FFFF |
border | テキストフィールドに外枠を描くか,描かないか | tf.border = true |
borderColor | 枠線の色(border = trueの時のみ有効) | tf.borderColor = 0x000080 |
type |
ユーザが内容を編集可能・不可能を設定 TextFieldType.DYNAMICなら編集不可能, TextFieldType.INPUTなら編集可能。 |
tf.type = TextFieldType.DYNAMIC |
autoSize | テキスト内容に合わせて自動的に寸法を合わます。 伸び縮みさせる基準位置をLEFT,CENTER,RIGHTから選びます。 |
tf.autoSize = TextFieldAutoSize.LEFT |
x,y,width,heightなど | 位置や寸法は一般オブジェクトと同様に変更できます。 |
以上をふまえて,いろいろ設定変更してみます。
package { import flash.display.Sprite; import flash.events.Event; //text関係のクラスをすべて読み込む import flash.text.*; //画面サイズと背景色,フレームレートを設定 [SWF(width="300", height="300", frameRate = "60", backgroundColor="0xffffcc")] public class Main extends Sprite { //main関数 public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } //コンストラクタ private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); // entry point //============================================================ //TextField "tf" を用意する var tf:TextField = new TextField(); //表示内容 tf.text = "このテキストは編集可能です。" //背景色あり tf.background = true; //背景色は薄い水色 tf.backgroundColor = 0xE0FFFF; //テキストフィールドに枠線を付ける tf.border = true; //枠線の色は紺色 tf.borderColor = 0x000080 //編集可能にする tf.type = TextFieldType.INPUT; //テキストフィールドの寸法を自動調整 tf.autoSize = TextFieldAutoSize.LEFT; //位置を変更 tf.x = 80; tf.y = 100; //表示する addChild(tf); //============================================================ } } }