コンポーネントのデフォルト動作のキャンセル
イベントの中にはコンポーネントに対して特定の動作を行うものがあります。
たとえば、TextInputコンポーネントのテキスト入力などが該当します。
このデフォルト動作はEventクラスのpreventDefault()メソッドを呼び出すことでキャンセルすることができます。イベントがpreventDefault()でキャンセルできるかどうかは、cancelableプロパティを参照することで確認できます。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
private function textInput(event:TextEvent):void {
//'a'しか入力させない
if ('a' != event.text) {
event.preventDefault();
}
}
]]>
</mx:Script>
<mx:Panel label="My Panel" id="panel" title="'a'を入力してください">
<mx:TextInput id="text" textInput="textInput(event)"/>
</mx:Panel>
</mx:Application>上記の例では、'a'以外の文字が入力させるとpreventDefault()を呼び出し、入力を無効にしています。そのため、このTextInputコンポーネントには'a'の文字しか入力できなくなります。