Flex2 (ActionScript3) のお勉強

Flex2 (ActionScript3) の勉強をしています。Flex2 では主に、MXML という XML でプログラムを書くことを求められます。正直 XML でプログラムを書くのはどうかと思うのですが、以下のように書くと最小限の XML だけで、あとは普通の ActionScript3 を使えます。ActionScript3 は Java と非常によく似た文法で、書いていて気持ちいいです。

Main.mxml

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()">
    <mx:Image id="img" source="bayside.gif" />
    <mx:Script source="Test.as" />
</mx:Application>

Test.as

import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
import mx.controls.Alert;
import mx.controls.TextInput;
import mx.controls.Button;

private var txt:TextInput;
private var btn:Button;

private function init():void
{
    txt = new TextInput();
    addChild(txt);
    
    btn = new Button();
    btn.label = "名前を入力";
    addChild(btn);

    txt.addEventListener(KeyboardEvent.KEY_DOWN, txtInputed);
    btn.addEventListener(MouseEvent.CLICK, btnClick);
}

private function txtInputed(event:KeyboardEvent):void
{
    if (event.keyCode == Keyboard.ENTER) {
        showNameAlert();
    }
}

private function showNameAlert():void
{
    if (txt.text.length == 0) {
        Alert.show("名前を入力してください。", "エラー");
    } else {
        Alert.show(txt.text + "さんこんにちは。", "メッセージ");
    }
}

private function btnClick(event:Event):void
{
    showNameAlert();
}