Flash CS3 ドキュメンテーション |
|||
| ActionScript 2.0 リファレンスガイド > ActionScript 言語エレメント > ステートメント > throw ステートメント | |||
throw expression
catch{} コードブロックによって処理 (キャッチ) できるエラーを生成 (スロー) します。catch ブロックが例外をキャッチしない場合は、スローされた値のストリング表現が [出力] パネルに表示されます。
一般には、Error クラスまたはそのサブクラスのインスタンスをスローします。「例」を参照してください。
対応バージョン : ActionScript 1.0、Flash Player 7
expression:Object - ActionScript の式またはオブジェクト。
この例の checkEmail() 関数は、受け取ったストリングが正しいフォーマットの電子メールアドレスかどうかを確認します。ストリングに "@" 記号が含まれていない場合は、エラーをスローします。
function checkEmail(email:String) {
if (email.indexOf("@") == -1) {
throw new Error("Invalid email address");
}
}
checkEmail("someuser_theirdomain.com");
次に、以下のコードで try コードブロック内の checkEmail() 関数を呼び出します。email_txt ストリングに有効な電子メールアドレスが含まれない場合は、テキストフィールド error_txt にエラーメッセージが表示されます。
try {
checkEmail("Joe Smith");
}
catch (e) {
error_txt.text = e.toString();
}
次の例では、Error クラスのサブクラスをスローします。checkEmail() 関数を修正して、そのサブクラスのインスタンスをスローします。
// Define Error subclass InvalidEmailError // In InvalidEmailError.as: class InvalidEmailAddress extends Error { var message = "Invalid email address."; }
FLA ファイルまたは AS ファイルで、タイムラインのフレーム 1 に次の ActionScript を入力します。
import InvalidEmailAddress;
function checkEmail(email:String) {
if (email.indexOf("@") == -1) {
throw new InvalidEmailAddress();
}
}
try {
checkEmail("Joe Smith");
}
catch (e) {
this.createTextField("error_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
error_txt.autoSize = true;
error_txt.text = e.toString();
}
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00001339.html