oshige: 2009年10月アーカイブ


image.jpg

Adobe EDGE newsletter第2回
『大重美幸のこれ見落としてませんか? ActionScript 3.0』
外部 swf ファイルのシンボルを利用する』が公開されました。


ちなみに第1回「あなたが思う以上に自由自在な『Buttonコンポーネント』」は先月の2009年9月人気記事the Edge newsletterでベスト1でした。まだ読んでない人は読んでくださいね。

評価基準は知らないんですけど(^ ^?

フォントの英語名はどうすれば調べることができるでしょうか?
実はけっこう簡単です。次のようにフォントを設定したテキストフィールドを選択した状態でコマンドメニューの[ActionScript用にフォント名をコピー]を実行します。あとはテキストエディタにペーストするだけです。
こんなメニューがあったのか!と思った人もいるでしょうけど、あったんですね。(^ ^)/

fontname01.jpg
フォントを指定しているテキストフィールドを選択する。

fontname02.jpg
[ActionScript用にフォント名をコピー]を実行。

fontname03.jpg
ペーストすると英語のフォント名が貼り付けられる。

実はもっと簡単な方法のもあります。環境設定のテキストパネルで[フォント名を英語表記]をチェックします。するとフォント名はすべて英語で表示されます。ただし、先の方法のペースト結果をみるとわかるように、フォント名はスタイルメニューの値(W4など)と組み合わせる必要があります。

fontname04.jpg
環境設定のテキストパネルで[フォント名を英語表記]をチェックする。

fontname05.jpg
フォントメニューが英語のフォント名で表示される。

スクリプトでテキストフィールドmyFldのフォント名を調べたい場合は、次のように実行します。ただし、myFldには何かテキストが入っている必要があります。
var tf:TextFormat = myFld.getTextFormat();
trace(tf.font); // Hiragino Maru Gothic Pro W4

「ロクナナワークショップのお好きな2講座をあわせてお申し込み頂くと、もれなく 10,000円 のアマゾンギフト券 をプレゼントいたします。」

という期間限定キャンペーン実施中!→詳しくはこちら

このチャンスにぼくのセミナーを受けてくださいね!

logo_67ws_on.gif

大重美幸のActionScript 3.0初級講座
AS3初級講座(前半)

  • 2009年10月24日(土)
  • 2009年11月20日(金)
AS3初級講座(後半)
  • 2009年10月31日(土)
  • 2009年11月27日(金)

書評05

|

Papervision3DやProgressionなどでクールなサイトを作っているClockMakerさん、今だとカヤックのwonderflのギャラリーサイトBeautiflが人気ですね。ClockMakerさん自身もwonderflにたくさんの優れた作品をアップしてますよね。毎度ながら仕事が速くて美しい!トレビアンです。
そのClockMakerさんに本の紹介をしてもらいました。ありがとうございます。(^ ^)/


ClockMaker Blog

一番感銘を受けたのは、Flash 10の新機能であるTextBlockのところです。実は以前にFlash 10の機能は思っていた以上に実用的かもという記事で、テキストブロックを使うとダイナミックテキストを斜めにも表示できることを紹介しました。

ソーシャルブックマークやwonderflのfavを合わせると、 70近くの方々からブックマークを頂いていてあたかも自分が一番に発見したかのように思ってしまったのですが、その内容がまるっと既に「ActionScript 3.0入門ノート」には載っています。...webから抜粋...

clockmaker.jpg

(section04-02 イベントとイベントリスナーから抜粋)

 入れ子のムービークリップのロールオーバー/ロールアウトのイベントは、クリックイベントと同じではありません。クリックイベントの場合は親ムービーにイベントリスナーを登録すれば子ムービーのインスタンスのクリックをイベントのtargetとして処理できますが、ロールオーバー/ロールアウトのイベントの場合はtargetとして処理できません。
 これに対処するために、次のサンプルで示すようにaddEventListener()の第3引数(useCaptureプロパティ)をtrueにします。すると親ムービーに設定したリスナー関数でロールオーバー/ロールアウトをした子ムービーのインスタンスをtargetとして処理できるようになり、子ムービーのインスタンスごとにイベントリスナーを登録する手間がなくなります。

[:script:]ロールオーバーした入れ子のインスタンスを拡大する
//イベントリスナーの追加
box_mc.addEventListener(MouseEvent.ROLL_OVER, onRollover, true);
box_mc.addEventListener(MouseEvent.ROLL_OUT, onRollout, true);

//ロールオーバーのリスナー関数
function onRollover(eventObj:MouseEvent):void {
	var target_mc:MovieClip=eventObj.target as MovieClip;
	target_mc.scaleX=target_mc.scaleY=3.0;
}

//ロールアウトのリスナー関数
function onRollout(eventObj:MouseEvent):void {
	var target_mc:MovieClip=eventObj.target as MovieClip;
	target_mc.scaleX=target_mc.scaleY=1.0;
}
fig4-02-09.jpg
イベントリスナーは親ムービーに設定してありますが、ロールオーバーした子ムービーのインスタンスが拡大します
swfを試す

[:note:] ROLL_OVER ROLL_OUT のイベントオブジェクトのbubblesプロパティがfalseだからです。CLICKのbubblesプロパティはtrueです。
詳しくはヘルプのイベントフローを参照してください。

(section04-02 イベントとイベントリスナーから抜粋)

 ムービークリップの中にさらにムービークリップが含まれているという入れ子のムービークリップのインスタンスの場合には、マウスイベントを受け取ったターゲットの処理に注意が必要です。
 たとえば、次のカエルの顔のムービークリップは顔の中の目が入れ子のインスタンスになっています。このムービークリップのインスタンスface_mcにクリックすると回転するイベントリスナーを追加します。

fig04-02-04.jpg
顔のムービークリップの中に目のムービークリップが入れ子で入っています。

[:script:]クリックしたtargetを回転させる
//イベントリスナーの追加
face_mc.addEventListener(MouseEvent.CLICK, onClick);

//クリックのリスナー関数
function onClick(eventObj:MouseEvent):void {
	var target_mc:MovieClip=eventObj.target as MovieClip;
	target_mc.rotation+=30;
}
 カエルの顔すなわちface_mcをクリックすると顔全体が回転します。つまり、targetはface_mcということになります。

fig04-02-05.jpg
顔をクリックすると顔全体が回転します。

 ところが、目をクリックすると目だけが回転します。目のインスタンスにはイベントリスナーを登録していないのに、クリックのtargetはface_mcではなく目のインスタンスになっています。

fig04-02-06.jpg
目をクリックすると目だけが回転します。
swfを試す

 目をクリックしても顔全体を回転させるには、targetプロパティではなくcurrentTargetプロパティを利用します。

[:script:]リスナーを追加したインスタンスを回転させる
//イベントリスナーの追加
face_mc.addEventListener(MouseEvent.CLICK, onClick);

//クリックのリスナー関数
function onClick(eventObj:MouseEvent):void {
	var target_mc:MovieClip=eventObj.currentTarget as MovieClip;
	target_mc.rotation+=30;
}
swfを試す

まったく新しいAS3の世界!
694a.jpg
Adobe Flash CS4
詳細!ActionScript3.0入門ノート[完全改訂版](CD-ROM付)

楽しいActionScript。
新たなる1歩へと踏み出しましょう。
■内容は?→ 目次を見る
■評判は?→ 書評を読む
この本を書いたわけ

このアーカイブについて

このページには、oshige2009年10月に書いたブログ記事が含まれています。

前のアーカイブはoshige: 2009年9月です。

次のアーカイブはoshige: 2009年11月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

あわせて読みたいブログパーツ