blog バージョン2
April 27, 2007
SCRATCHBRAIN.BLOG ver.2に切り替えました。
ひきつづき、Flash、ActionScript3.0の話題を中心に、ApolloやFlexについても取り上げたいと思っていますので、今後ともよろしくお願いします。
8-1-5.カスタムクラスからのイベント送出 その2
April 26, 2007
『8-1-4.カスタムクラスからのイベント送出 その1』のつづき。
その1ではEventDispatcherクラスを継承する場合についてまとめました。
ここではIEventDispatcherインターフェイスを使う場合を取り上げたいと思います。
Adobe Video Workshop その2
April 25, 2007
『Adobe Video Workshop その1』のつづき。
Creating a simple application with components
リストとボタンコンポーネントのチュートリアル。
次のような内容。
TextFieldにShapeでマスク
April 25, 2007
手順メモ。
1.テキストフィールド作成
var label:TextField = new TextField();
label.autoSize = TextFieldAutoSize.LEFT;
label.text = "SCRATCHBRAIN.NET";
addChild(label);
label.x = 25;
label.y = 25;
8-1-4.カスタムクラスからのイベント送出 その1
April 25, 2007
カスタムクラスからイベントを送出するようにするにはEventDispatcherクラスを拡張します。
すでにほかのクラスを継承している場合は、IEventDispatcherインターフェイスを使います。
ここではEventDispatcherクラスを使う場合について取り上げています。
8-1-3.イベントリスナー
April 24, 2007
イベントリスナーはイベントに応答して実行される関数で、イベントハンドラとも言います。
イベントリスナーはイベントが発生すると、リスナー関数(イベントハンドラ関数)を呼びます。
イベントリスナーの登録は次の手順で行います。
ActionScript3.0ゲームプログラミングブック
April 24, 2007
ゲームプログラミングとタイトルにあるわりにはゲームの話題はほんの少しです。
次期Flashに備えてActionScript3.0予習したかったんですが、入門書としてよかったです。
Flash関係の書籍によくある3Dメニューとかそういった表現については書いてありません。
Spriteロールオーバー時に指カーソルにする
April 24, 2007
buttonModeプロパティにtrueを設定すると、指カーソルになる。
サンプルコード
トウェルヴ/パティ スミス
April 24, 2007
パティ スミス初のカヴァーアルバム。
目当てはニルヴァーナの『スメルズ ライク ティーン スピリット』のカヴァーだったけど、HMVでニール ヤングの『ヘルプレス』のカヴァーを試聴して泣きそうになって、即購入。
Adobe Video Workshop その1
April 22, 2007
AdobeのFlas CS3関連リソースメモ。『Using Flash』から。
『Adobe Video Workshop』にCS3のチュートリアル、Tipsなど200以上ある。
製品リストからFlash CS3を選ぶと、34のトピックスが出てくる。
東京ミッドタウン
April 22, 2007
土曜日に東京ミッドタウンに行ってきました。

8-1-2.イベントオブジェクト
April 21, 2007
イベントオブジェクトはEventクラスとそのサブクラスを使って作成します。
イベントオブジェクトはイベントの種類が何かを表現します。
例えば、enterFrameイベントをイベントリスナーに登録するには次のようにします。
square.addEventListener(Event.ENTER_FRAME, onEnterFrameHandler);
別冊黒い画集/松本清張
April 21, 2007
6編からなる短編集。
家政婦が派遣された家でその家庭の崩壊を楽しむ『熱い空気』、邪馬台国論争と推理小説をくっつけた『陸行水行』の2編が変わった作品だと思った。
メイク アナザー ワールド/アイドルワイルド
April 21, 2007
アルバム序盤、あれ、オーディナリーボーイズ? って思ってしまうくらい若々しい。
でもやっぱり全体的にはREM好きにはたまらない曲調がアルバム後半にどっと続く。
35分に満たない全9曲の通算5枚目のアルバム。
なかなか結成10年のバンドがやらない短さ。
8-1-1.イベントモデルの概要とイベントフロー
April 20, 2007
ボタンがクリックされるなどのユーザー操作や、データのロードが完了した時など、なんらかのトリガによってイベントが発生します。
ActionScript3.0では、イベントをイベントオブジェクトとして、Eventクラスとそのサブクラスのインスタンスで表現します。
アドビで3D
April 20, 2007
そっか、『Adobe Photoshop CS3 Extended』は3Dグラフィックス、アニメーションに対応していたのか。
見落としていた。
7-6-1.ActionScript3.0の正規表現
April 18, 2007
正規表現は文字の出現パターンを定義し、文字列のチェックや操作などに使います。
正規表現を使うには、まずパターンをインスタンス化します。
次の2行は同じ意味です。
private var num :RegExp = /^[0-9]+$/;
private var num :RegExp = new RegExp("^[0-9]+$");
4-8.ダイナミッククラス
April 17, 2007
ダイナミッククラスにはプロパティ、メソッドを実行時に追加することができます。
ダイナミッククラスは次のようにdynamic属性をつけてクラス宣言します。
package {
dynamic class DynamicExample {
public var example :String = "example";
private var example3 :String = "example3";
}
}
Adobe CS3 Web Editions 英語版出荷スタート!
April 17, 2007
これまでのアナウンス通り、4月中に発表されましたね。
Adobe Creative Suite 3 Web Editions
日本版は先とのこと。
楽しみなんですが、出費が、、
IllustratorとPhotoshopは別に今のバージョンでいいような。
それか思い切って、MacとCS3とぜーんぶ買っちゃおうか。
7-5-3.XML階層構造へのアクセス
April 16, 2007
次のようなXMLファイルをActionScript3.0でロードしたとします。
ここではXMLのエレメントや属性にアクセスする方法をまとめます。
7-5-2.XMLオブジェクトの構築と変更
April 15, 2007
外部からXMLをロードしないで、ActionScript3.0でXMLを構築するにはいくつかの方法があります。
ここではXMLオブジェクトを構築する方法についてまとめています。
XML構造を見た目通り代入
var example :XML =
<fruit>
<item>
<fruitName>banana</fruitName>
<color>yellow</color>
</item>
<item>
<fruitName>apple</fruitName>
<color>red</color>
</item>
</fruit>
Hello Apollo ! パッケージング
April 13, 2007
『Hello Apollo !』のパッケージングがまだだったのが気になっていたので終わらせとこうと思います。
パッケージングをして、airファイルを作成することでApolloアプリケーションを配布することができるようになります。
7-5-1.XMLのロード
April 13, 2007
次のようなXMLドキュメントがあったとします。
7-4-4.ランタイムエラーへの対応 その3
April 12, 2007
ここではnetStatus.info.levelプロパティ、status.levelプロパティを使ったエラー処理のうち、netStatus.info.levelプロパティを使った場合について主に取り上げています。
6-3-3.テキスト、バイナリデータのロード
April 10, 2007
テキスト、バイナリデータ、URLエンコード形式の変数を取得するにはURLLoaderクラスを使います。
読み込むファイルが異なるドメインのファイルの場合、クロスドメインポリシーファイルが必要なります。
クロスドメインポリシーファイルについてはセキュリティに関してまとめる際に、別途取り上げたいと思います。
URLLoaderクラスの使用手順は次のようになります。
7-4-3.ランタイムエラーへの対応 その2
April 10, 2007
エラーイベント処理では、非同期エラーに対処します。
エラーイベント処理を作成するには2つの方法があります。
6-3-2.SWF、イメージファイルのロード
April 9, 2007
SWF、JPG、PNG、GIFファイルのロードにはLoaderクラスを使い、テキスト、バイナリデータのロードにはURLLoaderクラスを使います。
ここではSWF、イメージファイルのロードにのみ触れます。
Loaderクラスの使用手順は次のようになります。
ヒューマン ネイチュア
April 8, 2007

「人類は自らの知力に酔いしれるあまり 自然への謙虚さを忘れてる まさに傲慢です」
ピグミーチンパンジーとして育ったパフ(リス エヴァンス)が議会で語る。
この台詞からは深刻なメッセージを感じるが、物語はユーモアに溢れ、堅苦しさはない。
7-4-2.ランタイムエラーへの対応 その1
April 7, 2007
ランタイムエラーには大きく3つの種類があり、それぞれ対処法が違います。
恋の三原則
April 7, 2007
いま僕がやっているアドビの『ActionScript3.0のプログラミング』をまとめながら読み進めるという作業はとても地味な作業だ。
誰かがこの作業を見て、「ぜひ一緒にサイトを作ろう」とは期待しないだろう。いまの作業は言ってしまえば楽譜の読み方を覚える作業でしかない。楽譜を読めたからといって、いきなりモーツァルトのようになれるかといったら、もちろんなれるわけない。
Hello Apollo !
April 6, 2007
Apolloのオライリー本がようやく到着。株式会社antsさんの記事『Apolloポケットガイドの邦訳を開始しました』にあるように、『Apolloポケットガイド邦訳WIKI』で邦訳化が開始しています。ほんとにすばらしい活動だと思います。
Flash CS3に備えつつ、Apolloもこのままほっとくとだいぶ置いていかれそうなので、Hello Apollo試しました。
開発環境は次の手順でセットアップ。
草の陰刻/松本清張
April 5, 2007
『草の陰刻』は爽やかな読後感のある作品だった。
主人公である検事の仕事に対する真剣な取り組み方と、女性に対する感情の初々しさが清潔感を感じさせる。一方、彼の対極にあるのは一人の代議士で、女関係、金銭関係、過去と不純な面が多い。
4-7.ループ処理
April 5, 2007
繰り返し処理は、forステートメントとwhileステートメントを使います。
for
指定した条件式の範囲でループ処理を行います。
4-6-2.演算子 その2
April 5, 2007
『4-6-1.演算子 その1』のつづきです。
delete演算子
オブジェクトのプロパティの削除を行います。
削除に成功した場合はtrue、失敗した場合はfalseを返します。
4-6-1.演算子 その1
April 5, 2007
ここではすべてを取り上げるのではなく、一部を抜粋しています。ここにないものに関しては『Adobe Flex 2 リファレンスガイド』を参照して下さい。
論理否定(!)演算子
ブール値を反転します。
typeof演算子でWarning
April 5, 2007
typeof演算子でfunctionを試そうとしたところ、次のように記述すると警告「#3553: Possible missing parentheses.」が出る。結果自体は「function」となり、合っている。
カンマ(,)演算子とforステートメント組み合わせはNG
April 5, 2007
『Adobe Flex 2 リファレンスガイド』のカンマ(,)演算子の説明サンプルをFlash 9 public alpha版で試したところ、怪しげな現象と遭遇。
7-4-1.コンパイラエラーとランタイムエラー
April 4, 2007
エラーには大きく2種類、コンパイラエラーとランタイムエラーがあります。
コンパイラエラー
コンパイラで不正なコードが検出された時に報告されます。一部のエラーはstrictモードでコンパイルした時のみ検出されます。
7-3-6.配列のコピー
April 4, 2007
配列のコピーには浅いコピーと深いコピーがあります。
浅いコピー
Arrayクラスのconcat()メソッド、slice()メソッドをパラメータなしで呼び出すと、新しい配列にもとの配列をコピーします。
7-3-5.多次元配列
April 4, 2007
多次元配列とはインデックス配列と結合配列を組み合せた配列のことです。
2つのインデックス配列を組み合せた場合
ここでは次のテーブルを配列に格納したいと思います。
| A1 | B1 | C1 |
| A2 | B2 | C2 |
| A3 | B3 | C3 |
この場合、テーブルの行を1つ目の配列、列を2つ目の配列に格納します。
7-3-4.結合配列
April 3, 2007
結合配列とは、値とインデックスと結びつけるのではなく、キーと結びつける配列です。
結合配列を作成するには2つの方法があります。
Objectクラスを使用
Objectクラスのインスタンスを作成し、キーと値をオブジェクトリテラルで指定します。
次の例では「country」「_year」がキーで、「Korea Japan」「2002」がそれぞれの値になります。キーには空白文字を含めないようにします。
var worldCup :Object = new Object();// 初期化
worldCup = {country:"Korea Japan" , _year:"2002"};
trace(worldCup["_year"], worldCup["country"]);
// 出力 2002 Korea Japan
7-3-3.インデックス配列 その3(クエリ)
April 3, 2007
配列から情報を取り出すには次のメソッド使います。ここで取り上げるメソッドはもとの配列に変更を加えるのではなく、もとの配列の情報を使って別の情報を作成するのに使います。
concat()メソッド
もとの配列に要素または別の配列を連結して、新しい配列を作成します。
var myArray1:Array = ["a","b"];
var myArray2:Array = myArray1.concat("c","d");
trace(myArray2);// 出力 a,b,c,d
var myArray3:Array = myArray1.concat(myArray2);
trace(myArray3);// 出力 a,b,a,b,c,d
7-3-2.インデックス配列 その2(ソート)
April 2, 2007
ここではインデックス配列のソート方法についてまとめたいと思います。
配列の要素をソートするには次のメソッドを使います。
reverse()メソッド
reverse()メソッドは、配列要素の並び順を逆転します。
var myArray:Array = ["a","b","c"];
myArray.reverse();
trace(myArray);//出力 c,b,a
7-3-1.インデックス配列 その1(挿入と削除)
April 2, 2007
インデックス配列とは、値とインデックスを結びつけて格納する配列です。値にアクセスするにはインデックスを使います。
インデックス配列を作成するには2通りの方法があります。
配列の作成
PythagoreanTheorem(ピタゴラスの定理)クラス 更新
April 1, 2007
カスタムクラス『PythagoreanTheorem(ピタゴラスの定理)クラス』に修正加えました。
パラメータに非数、0以下の値がセットされた時、戻り値は-1が返されます。

