1 :Now_loading...774KB2010/10/24(日) 12:40:45 ID:aGV7pB0h
AcitonScriptのことなら
初歩的な質問でもなんでもおk

見れない、保存したい、flashを作りたいはスレ違い
下記の関連スレ、超基本的な質問へ。

●質問する時は自分の環境を書く(AS2,AS3の別も)
●質問はものすごい勢いじゃなくて結構
●できるだけコードも示す
●まず自分がやりたいことを明確に書く。そのために試してみた処理を書く

前スレ
ActionScript 誰かが物凄い勢いで解答するスレ26
http://hibari.2ch.net/test/read.cgi/swf/1270211035/

関連スレ
Flashの超基本的な質問はここでしろ! part41
http://hibari.2ch.net/test/read.cgi/swf/1274977716/
※初心者は↑こちら推奨
2 :Now_loading...774KB2010/10/25(月) 00:06:31 ID:7UulMQM2
環境:FlashCS4をWinXP-Proで使用(AS3)
複数の値のどれか1つが変化したとき、それを感知して別の動作をさせるときの
スマートな記述を探しています。

たとえば、 ●○◎ というMC(丸印の連続: 3色ダンゴみたいなもの)があった時、
これ自体をドラッグ移動させたとき(X,Y値の変化)、またはマウスホイール回転でMC
の白丸を中心にした回転(Rot)、などでtrace("変化") を実行するものです。

ベタな方法としては、各値をテキストフィールドに代入してこれが変化したとき→trace
や、過去の値を配列に保持しEvent.ENTER_FRAMEで随時新しい値と比較すること
を考えました。

しかし、前者の方法では10個の監視項目があれば10個のテキストフィールドを用意
しなければならず、後者では常にフレームアクションが動作しているのでシステムに
負担をかけてしまいます。

こんな場合のスマートな監視方法には何がありますでしょうか?
3 :Now_loading...774KB2010/10/25(月) 00:12:31 ID:Izq9Comk
>>2
そもそも値が変更されるアクションがわかってるなら
それをトリガーにしとけばいいんじゃないの?
4 :9742010/10/25(月) 01:14:27 ID:uXUuuUnb
前スレの974です。
向きを変える所は一応出来ていて、今回はそこではないのでheroへの指示部分は省いています
画面の動きですが、カーソルボタンを押した際にキャラクターが動くのではなく壁が動くようにして移動を表現しています
分かりづらくて申し訳ありません
5 :Now_loading...774KB2010/10/25(月) 10:47:42 ID:72u1+wI7
>>2
その方法って、どっちも毎フレーム監視してるんだから変わらなくね?
直接プロパティを監視した方がまだいいような。

っていうかドラッグでMC動かせるって事は、
その時点でMouseEventのリスナー関数があるんだから、
これが発生している間だけ監視すればいいんじゃないの?
6 :Now_loading...774KB2010/10/25(月) 18:48:41 ID:diHb9biy
独自のイベントを定義して発行する
監視するオブジェクトはそいつをリスナーに登録する
7 :Now_loading...774KB2010/10/25(月) 21:52:36 ID:RxrMoLRy
「Project ROME」はSWFがパブリッシュできる。
嬉しい!
ttp://rome.adobe.com/

が、AS使用の可否やお絵かき機能の程度は不明。
9 :Now_loading...774KB2010/10/26(火) 14:12:01 ID:57+cpWxK
ステージに何か一つでもテキストを作成してると、デバッグした時の出力に
[SWF] C:\Users\User\Desktop\test.swf\[[DYNAMIC]]\1 - 2067 バイト (圧縮解凍後)
[SWF] C:\Users\User\Desktop\test.swf\[[DYNAMIC]]\2 - 322606 バイト (圧縮解凍後)
[SWF] C:\Users\User\Desktop\test.swf\[[DYNAMIC]]\3 - 358183 バイト (圧縮解凍後)
[UnloadSWF] C:\Users\User\Desktop\User.swf\[[DYNAMIC]]\1
とかって出てくるんですが、これってどういう処理をやってるんでしょうか?

なぜかこの状態だとLocalConnectionに失敗するようになってしまいました。
テキスト無しだと相変わらずうまく行くのですが…。
CS5 体験版です。
10 :Now_loading...774KB2010/10/26(火) 14:13:52 ID:57+cpWxK
すみません、最後の行の出力はUser.swfではなくtest.swfの間違いです。
11 :Now_loading...774KB2010/10/28(木) 05:18:15 ID:KLCq8val
配列データをバイナリで保存する方法で質問です。
WinXP,CS4(AS3,Player10)

try 〜 catch で下のように書きました。
try {
var dataArr:Array = [Math.PI,Math.sqrt(2.0),Math.sqrt(3.0)];//テストで3つの数値を配列に代入
var baArr:ByteArray = dataArr as ByteArray;//ByteArray化
var fileRef:FileReference = new FileReference();
fileRef.save(baArr, "test.math");//test.mathという名前で保存
} catch (errorEvt:Error) {
trace("Error: "+errorEvt.message);
}

コンパイルではエラーが出なかったのですが、ボタンアクションで実行したところ、
traceは Error: data となってしまいます。

どこが問題でしょうか?
13 :Now_loading...774KB2010/10/28(木) 08:46:27 ID:OA0SSHl/
質問です、失礼します。


オリジナルクラスのオブジェクトの、addChildとremoveChirdを繰り返す処理
をしているのですが、2度目のremoveChildのときに
「指定した DisplayObject は呼び出し元の子でなければなりません。」
というエラーが出ます。


そこで、
まずは検証のために、イベントリスナーでいうところの「hasEventListener」のような、
任意のオブジェクトがステージ上に存在するか否かを判別するメソッドを使いたいのですが、
そういうクラスはありますか?


例:hasChildという名前のメソッドがあると仮定したとき、
if(hasChild(オブジェクト名){
  オブジェクトが存在するときの処理
}
else {
  オブジェクトが存在しないときの処理
}

という風に使いたいのですが……。
14 :Now_loading...774KB2010/10/28(木) 10:57:49 ID:arrDDLHr
this.contains(オブジェクト名)
でthisにオブジェクト名がaddChildされてるかどうかわかるよ
15 :Now_loading...774KB2010/10/29(金) 19:23:13 ID:1Q0w3aV0
ざっくりとした質問になってしまいます。すみません。

「XX-CAKE」という、静止画像のおっぱいを揺らす事が出来るツールがあるのですが、
flash CS4の機能、または、Flash lite1.1で、同等の動きを再現したいです。

現在、胸部分にDisplacementMapFilterを使用して、
部分的にエフェクトをかけれるか調べている状況ですが、
この方法で「XX-CAKE」と同等の動きを再現することは可能でしょうか?

もし、宜しければ、アドバイス、参照URL等を教えて下さい。
16 :Now_loading...774KB2010/10/29(金) 21:02:15 ID:ImelYfeL
>>15
「as3 DisplacementMapFilter fisheye」でググって似たようなの発見
多分これを、範囲をうまく指定して反復すればいいんじゃないかしら?
ttp://plasticsturgeon.com/?p=263
17 :Now_loading...774KB2010/10/30(土) 21:31:18 ID:vjiGTirh
>>16
ありがとうございます。

参考になるので、そのサイトのソ−スを元に色々試してみようと思います
18 :Now_loading...774KB2010/10/30(土) 22:57:13 ID:RdBd1w58
ペンツールとかでシェイプとして作成した後に
プログラムの上でシェイプを削除するにはどうすればいいですか?
19 :Now_loading...774KB2010/10/30(土) 23:01:57 ID:sGjAET8W
>>18
単純にgraphicsで描画してるならclearすればいいんじゃないかな
movieclipに内包させてるならremoveChildで
20 :Now_loading...774KB2010/10/30(土) 23:18:48 ID:RdBd1w58
>>19
ツールで描いてからコンパイルしてプログラムで消したくって
this.graphics.clear()ではうまくいかなくて困ってます。
21 :Now_loading...774KB2010/10/30(土) 23:19:17 ID:sGjAET8W
>>18
あ、おえかきツールみたいのじゃなくてflash上でステージに直接おいたものってことなら
stage.removeChildAt(0)
とかで消せる

シェイプが複数ある場合は
ステージにおいたシェイプの数だけforループでシェイプをひろって、
幅とか位置とかの条件式で判別して目的のシェイプを削除してね
22 :Now_loading...774KB2010/10/30(土) 23:22:36 ID:sGjAET8W
すみません
シェイプが複数ある場合はあらかじめムービークリップとかにしておかないと動かないですね・・・
24 :Now_loading...774KB2010/10/31(日) 01:15:40 ID:7Oooq1bf
AS2.0で配列のコピーについてです

a = [1, 2, 3];
b = a.slice();
b[0] = "4";
trace(a);
trace(b);

これだと 1,2,3 4,2,3 と出てきてくれるので正しくコピーされたと
思うのですが、

a = {Name:"やるお", Job:"ニート"};
b = a.slice();
b["Name"] = "やらないお";
trace(a["Name"]+":"+a["Job"]);
trace(b["Name"]+":"+b["Job"]);

これだとbの方が2つともundefinedになってしまいます。
上記の場合だと、どのようにコピーすればいいのでしょうか?
25 :Now_loading...774KB2010/10/31(日) 01:29:07 ID:BJ0aYu8k
>>24
a = {Name:"やるお", Job:"ニート"};
trace(a)
すると分かるけど、aの型がobjectになってるので

a = {Name:"やるお", Job:"ニート"};
b = mx.utils.ObjectCopy.copy(a)
b["Name"] = "やらないお";
trace(a["Name"]+":"+a["Job"]);
trace(b["Name"]+":"+b["Job"]);

これでOK?
26 :Now_loading...774KB2010/10/31(日) 01:34:09 ID:Nto3dErF
2番目って配列じゃなくてオブジェクトじゃん、そりゃslice()なんて動作しないわ
コピーしたけりゃfor eachとかでプロパティごとにやるしかないんじゃね?
27 :Now_loading...774KB2010/10/31(日) 02:50:08 ID:VP0TG1wF
ブロック崩しとか、シューティングとかって、タイマーイベントで制御していいのかな?
28 :Now_loading...774KB2010/10/31(日) 03:34:10 ID:Nto3dErF
いいんじゃね?
29 :Now_loading...774KB2010/10/31(日) 03:38:58 ID:VP0TG1wF
>>28
タイマーイベントの中にメインループ書いて、そこで一律管理でいいよね?
やってみるわ
30 :hy2010/10/31(日) 08:59:35 ID:VPIo7lzQ
mac10.5 flash cs5 as3.0です。
ボタンにクリックイベントをつけてmcがフェードインで表示されるようにしたんですが、2回目以降はボタンをクリックしてもフェードインの処理がされないようにするにはどうしたらいいですか?

btn_a.addEventListener(MouseEvent.CLICK, click_a);


public function click_a(e:MouseEvent):void
{
container_mc.addChild(a_mc);

/*else if (container_mc.contains(a_mc))
{
container_mc.btn_a.mouseEnabled = false;
}*/

//上の条件文ではダメでした

a_mc.alpha = 0;
a_mc.x = stage.stageWidth / 2;
a_mc.y = stage.stageHeight / 2;
a_mc.addEventListener(Event.ENTER_FRAME,imgAlpha);
}


private function imgAlpha(e:Event)
{
e.target.alpha += 0.15;
if (e.target.alpha > 1)
{
e.target.removeEventListener(Event.ENTER_FRAME,imgAlpha);
}
}
32 :Now_loading...774KB2010/10/31(日) 12:38:57 ID:umJ/YPDQ
>>30
1回だけ反応させたいなら、クリックした時点で、removeEventListener()すればいいのでは?
33 :hy2010/10/31(日) 19:53:05 ID:VPIo7lzQ
>>32
で、できました。
初歩的ですみません
34 :hy2010/10/31(日) 20:12:54 ID:VPIo7lzQ
>>32
複数のボタンA,Bがあった場合、別のボタンBをクリックして、その後またボタンAをクリックしたときは、
removeしたイベントをまたaddしたいのですが、

btn_a.addEventListener(MouseEvent.CLICK, click_a);

public function click_a(e:MouseEvent):void
{
container_mc.addChild(a_mc);

a_mc.alpha = 0;
a_mc.x = stage.stageWidth / 2;
a_mc.y = stage.stageHeight / 2;
a_mc.addEventListener(Event.ENTER_FRAME,imgAlpha);

btn_a.removeEventListener(MouseEvent.CLICK, click_a);
}

ボタンBも同様につくる

これでは、ボタンA、ボタンB、ボタンAとクリックした時click_aが実行されません。
removeの位置が悪いですか?
35 :Now_loading...774KB2010/10/31(日) 21:44:40 ID:BJ0aYu8k
>>34
ボタンBをクリックしたとき実行する関数に、ボタンAにaddEventListenerする処理を追加する
removeの位置はそのままでOK

hasEventListenerを使ってボタンAにイベントが割り当てられているか調べる方法の方が
ボタンが増えた際に応用できそうですが
36 :Now_loading...774KB2010/10/31(日) 22:31:04 ID:7Oooq1bf
>>25をやってみましたが、AS2.0では動作しないようですね。
ガリガリfor文でコピるのはどことなく格好悪いのでスマートな方法が
あったら教えて下さい><
37 :Now_loading...774KB2010/10/31(日) 22:48:43 ID:BJ0aYu8k
>>36
書き忘れ
最初にimportしてね

import mx.utils.ObjectCopy;
38 :Now_loading...774KB2010/10/31(日) 22:58:34 ID:xRgkhEhy
まずAS2.0でmxパッケージが使えるのか?
39 :Now_loading...774KB2010/10/31(日) 23:15:38 ID:BJ0aYu8k
>>38
他のクラス全部についてはわからないんだけど、とりあえずこれは動くはず
AS3ではエラー出るのでこのコードでは動かないし
AS2で実際にファイル作って動きを確認しました
40 :Now_loading...774KB2010/10/31(日) 23:25:19 ID:7Oooq1bf
>>37
ごめんなさい無理でした。
そもそもutils.ObjectCopyって部分の色が変わらないとです
41 :Now_loading...774KB2010/10/31(日) 23:44:14 ID:BJ0aYu8k
なんだろうFlashのバージョンが古いとかかな…?
CS3でimportのあるなしの両方のコードで試して、
importが必要なのと、importができてるのを確認したんだけど
42 :Now_loading...774KB2010/10/31(日) 23:49:33 ID:7Oooq1bf
>>41
なんとFLASHMXなのです
43 :Now_loading...774KB2010/11/01(月) 00:03:12 ID:BJ0aYu8k
>>42
えー!!
たしかこれ使えるのMX2004あたりだったような気がする…
44 :Now_loading...774KB2010/11/01(月) 00:06:55 ID:fIimJ/27
loader.load()のタイミングとEvent.COMPLETEのタイミングが異なるから
出来る気がしないのですが
jpgとかのパスを受け取ってそれを読み込んだDisplayObjectを返すような関数ってかけたりしますか?
45 :Now_loading...774KB2010/11/01(月) 00:11:49 ID:uF6x0M4x
>>44
読み込むjpgごとに新しくローダーを宣言すれば
それぞれのcompleteのタイミングで別々に処理ができる
46 :Now_loading...774KB2010/11/01(月) 00:22:30 ID:oir2UuU0
>>43
時代に取り残されたMX難民は地道に調べてみる事にします
CS4欲しいお
47 :Now_loading...774KB2010/11/01(月) 00:31:31 ID:fIimJ/27
>>45 それってモジュール性悪くないですか
今のところ妥協してこんなことしてますが
internal function sload(parent:Sprite,str:String):void {
var l:Loader = new Loader();
var ur:URLRequest = new URLRequest(str);
l.contentLoaderInfo.addEventListener(Event.COMPLETE, handler);
l.load(ur);
function handler(e:Event):void {
parent.addChild(l.content);
l.contentLoaderInfo.removeEventListener(Event.COMPLETE, arguments.callee);
}
}

こんなインタフェースにしたい
function str2do(str:String):DisplayObject{/* ごにょり */}

win32apiのpostmessageに対するsendmessageみたいに
同期するリスナが欲しいです
48 :hy2010/11/01(月) 00:54:30 ID:Ageg0821
>>35
解決しました。
hasEventListenerの方法も調べてやってみます。
49 :Now_loading...774KB2010/11/01(月) 22:04:57 ID:K2CC1NbN
AS3.0初心者です。
Flash起動時にサウンドをミュートで読み込み、ボタンを押すごとにミュート/再生が切り替わるフラッシュを作ろうとしております。
ボタンのムービークリップ1フレーム目に下のスクリプトを記述したのですが、サウンドが再生されるどころか、
「TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。」というエラーが出てしまいます。
何がいけないのでしょうか……。

// ▼基本処理
buttonMode = true;
nextFrame();

// ▼変数定義
var sndCh:SoundChannel;
var sndTr:SoundTransform;
sndCh.soundTransform = sndTr;

// ▼サウンドオブジェクトの作成
var snd:Sound = new BGM01();

// ▼イベント処理
snd.play(0, 1000);
sndTr.volume = 0;
addEventListener(MouseEvent.CLICK, xPlayClick);

// ▼イベントハンドラ定義
function xPlayClick(evt){
if (sndTr.volume == 0){
sndTr.volume = 1;
}
if (sndTr.volume == 1){
sndTr.volume = 0;
}
}
50 :Now_loading...774KB2010/11/01(月) 22:11:34 ID:ilE9sArN
>>49
多分sndTrがNullのままなんじゃないの
51 :Now_loading...774KB2010/11/01(月) 22:42:24 ID:P0+b5N7A
>>49
sndCh.soundTransform = sndTr;
これでしょ。sndChがnewされてないから。
52 :Now_loading...774KB2010/11/01(月) 22:54:42 ID:K2CC1NbN
なるほど、ありがとうございます。

var sndCh:SoundChannel;
var sndTr:SoundTransform;

var sndCh:SoundChannel = new SoundChannel();
var sndTr:SoundTransform = new SoundTransform();

に書き換えたのですが、今度はまったく音量のコントロールができません。
ボタンをクリックしても、平然と音楽が流れ続けてしまいます……。
53 :Now_loading...774KB2010/11/01(月) 23:01:45 ID:SgkuAz9W
snd.play()の返り値でSoundChannelのインスタンスが得られるから、それを変数に入れて
そのプロパティのsoundTransformを操作するんだ
アドビのオンラインリファレンスを読んだ方がいいよ、例も書いてあるし
54 :Now_loading...774KB2010/11/02(火) 01:05:39 ID:ap7EJxUC

FlashBuilder4が開発環境なんだけど、
Flashのデバッガいれてブラウザでデバッグ実行してみると
外部サイトのgifファイル読み込んでるコードでサンドボックス例外みたいのでて止まっちゃいます

ググるとcrossdomain.xmlつくれってのばかり見つかるんだけど、
その画像ファイルは外部サイトので、自分とこのサーバじゃないから
crossdomain.xmlは関係ないです

大体この例外でて動かないのは自分の環境だけです
なのでローカル環境の問題のはず
他の人はMacだったり、いろいろ環境違って何がダメなのかがわかんない
 Windows XP
 FlashPlayerは最新
 ブラウザはFirefox。Safariでも同じ例外でた。
 ChromeはFlash内蔵だからやり方わかんない
 (about:pluginsでデフォルトのFlashPlayer無効にしてみたけど
  インストール汁ってでるだけで、できなかった)
 あとFlashのアンインストーラで消して入れ直してみてそれぞれ試したけどダメ

なんかアドバイスください
 
55 :Now_loading...774KB2010/11/02(火) 01:15:10 ID:hQg0R42r
外部サイトの画像だからアクセス違反になってんじゃないの?
56 :Now_loading...774KB2010/11/02(火) 02:47:14 ID:ap7EJxUC
だれがやってもこのエラーならそれで納得なんだけど
自分の環境でしか発生しないっていう
57 :Now_loading...774KB2010/11/02(火) 03:03:11 ID:kiN5SrAN
>>56
デバッグ版のフラッシュプレーヤー入れてるのがあなただけとかいうオチじゃないよね
58 :Now_loading...774KB2010/11/02(火) 05:07:39 ID:7aRCuI5A
CS5+Flashdevelopでゲームを作ってるんですが、
キーボード入力のキーリピートで困っています

stage.addEventListener(KeyboardEvent.KEY_DOWN,setKeyUp);

function setKeyUp(event:KeyboardEvent){
trace(event.keyCode);
}

たとえば上記のようなキーを離したときキーコードを出力するコードを実行し、
スペースキーを”押しっぱなし”にすると出力は以下のようになります

229
229
229
229
229
229

これはOSのキーリピート機能によって勝手にキー入力が連打されてしまっているようなのですが
これをみなさんはどのように回避されているのでしょうか
59 :Now_loading...774KB2010/11/02(火) 06:00:31 ID:YPcUUl/8
>>58
KEY_DOWN → フラグ立てる

フラグでなんか動かす

KEY_UP → フラグ折る
60 :Now_loading...774KB2010/11/02(火) 06:10:06 ID:7aRCuI5A
>>59
僕が>>57に貼ってた検証用のコードが間違ってました
×stage.addEventListener(KeyboardEvent.KEY_DOWN,setKeyUp);
○stage.addEventListener(KeyboardEvent.KEY_UP,setKeyUp);

key_upはオートリピートの影響受けませんね
>>59のやり方でいこうともいます
ありがとうございます
61 :Now_loading...774KB2010/11/02(火) 13:38:59 ID:Kk6HAKgQ
FLASHで画像を流して、クリックでURLに飛べるというFLASHを購入したのですが

http://www.flashxml.net/image-scroller.html

IEで見たとき、URLに飛ぶときにポップアップ警告が毎回出てしまいます

FLASH上からのリンクのポップアップ回避についていくつか調べたのですが
これをどう設定してよいのかわかりません

ご教授願えますでしょうか?

<参考URL>
http://natchan-develop.seesaa.net/article/91069642.html
http://creazy.net/2008/07/sub_funcs_for_popup_blocker.html
http://wakuworks.jugem.jp/?eid=85

62 :Now_loading...774KB2010/11/02(火) 13:53:48 ID:YPcUUl/8
>>61
購入って事は出来合いのもの?
ソース弄れる環境にないとその辺変えられないけど
63 :Now_loading...774KB2010/11/02(火) 14:19:17 ID:Kk6HAKgQ
66 :Now_loading...774KB2010/11/03(水) 21:19:45 ID:eEKzJGEr
sparkで開発中ですがcssでglobalでフォントをゴシックにしています。
ですが、Labelは明朝のままです。ゴシックにしたいのですが、一つ一つ指定するしかないのでしょうか?
67 :Now_loading...774KB2010/11/03(水) 23:21:11 ID:1LqI4KVP
public class LoadXML{
private var xml:XML;
private var url:String;

public function LoadXML(u:String){
url = u;
}

public function getXML(url:String) {
var loader:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest(url);
loader.addEventListener(Event.COMPLETE, function(e:Event):void {
xml = new XML(loader.data);
trace(xml);
});
loader.load(request);
}

public function returnXML():XML {
trace(xml);
return xml;
}
}

こんな感じでXMLをロードしています。
Event.COMPLETEのtraceは出力されますが、returnXMLのtraceはnullで、戻り値もnullです。
なぜですか?
68 :Now_loading...774KB2010/11/04(木) 13:15:20 ID:XgiK45V4
下記の2種類の方法で、再生中のメモリの使用量は大きく変わってきますか?

A -------------------------------------------------------------------
ムービークリップ:a
 フレーム1:[画像a-1] / フレーム2:[画像a-2] / フレーム3:[画像b-1] /
 フレーム4:[画像b-2] / フレーム5:[画像b-3] … フレーム999:[画像z-3]

ムービークリップaを配置して、duplicateMovieClipで複数複製して
複製したムービークリップをgotoAndStopで指定のフレームに移動
B -------------------------------------------------------------------
ムービークリップ:a
 フレーム1:[画像a-1] / フレーム2:[画像a-2]
ムービークリップ:b
 フレーム1:[画像b-1] / フレーム2:[画像b-2] / フレーム3:[画像b-3]
 :
ムービークリップ:z
 フレーム1:[画像z-1] / フレーム2:[画像z-2] / フレーム3:[画像z-3]

ムービークリップa〜zにリンケージ識別子を指定。
attachMovieで複数複製して複製したムービークリップをgotoAndStopで
指定のフレームに移動
---------------------------------------------------------------------

また、再生中のメモリの使用量がわかる方法があれば合わせて教えてください。
環境:Windows XP/Flash 8
69 :Now_loading...774KB2010/11/04(木) 16:59:25 ID:in/NHtVX
>>66
Labelを継承したクラス作って、コンストラクタの中でフォント指定するとか

>>67
getXMLとreturnXMLを連続して実行してるなら、読み込みが終わってEvent.COMPLETEイベントが起きる前に
returnXMLが実行されてるからじゃないかな

>>68
デバッグプレイヤー使用時なら、System.totalMemoryで取得できるみたいだな
http://hkpr.info/flash/game/sample/s051.phpとか参考にしたら?
70 :Now_loading...774KB2010/11/04(木) 17:28:41 ID:in/NHtVX
って>>68はFlash8だからAS2.0か
・・・タスクマネージャでプロセス見るとか?
71 :Now_loading...774KB2010/11/04(木) 17:46:29 ID:3S/8zkeg
http://www.gaba.co.jp/
↑のサイトみたいな画像を斜めにするのってどうやるんでしょうか?
72 :Now_loading...774KB2010/11/04(木) 17:54:40 ID:JHwyfqpq
>>69
サンクスです。
73 :722010/11/04(木) 20:27:44 ID:JHwyfqpq
.asファイルでクラスを作ってそれでURLを呼び出ししていて、そのロードが完了したことを
mxmlファイルに伝えたい場合どんな方法はあるでしょうか?
74 :Now_loading...774KB2010/11/05(金) 02:26:58 ID:OnWGbRRC
>>73
mxml側のリスナー関数をasのクラスにEvent.COMPLETEでaddEventListenerするとかかな
as側とmxml側がどう関係してるか分からんから何とも言えないけど
75 :Now_loading...774KB2010/11/05(金) 11:04:53 ID:/YZKkQv7
>>71
DisplacementMapFilter 台形
で検索するとサンプル見つかると思います
76 :722010/11/06(土) 15:52:54 ID:8Uz9tWj0
flexのlistのスクロールバーの位置と要素の高さを指定したいのですが、どんな感じでやるのでしょうか?
77 :Now_loading...774KB2010/11/06(土) 21:38:09 ID:u8Q9WSjn
TextFormatのfontのデフォルト値をflash.text.TextFormatにさかのぼって設定するにはどうしたらいいですか?
78 :Now_loading...774KB2010/11/06(土) 22:46:09 ID:uxdRdUl+
TextFormatをextendsしたMyTextFormatでも作ったらいいんじゃね?
79 :Now_loading...774KB2010/11/06(土) 23:16:45 ID:u8Q9WSjn
>>78
ありがとうございます。
継承ではなく、元から対応したいのですが、できませんか?
80 :Now_loading...774KB2010/11/07(日) 00:29:06 ID:xRmgh6bN
それは完全に元の物を置き換えてしまいたいって事言ってるの?
flash.text.TextFormat自体を書き換えたいってこと?
81 :Now_loading...774KB2010/11/07(日) 00:30:01 ID:xRmgh6bN
先に行っておくけど、それは出来ないし、
何のためにそれが必要なのかもわからない。
82 :sage2010/11/07(日) 20:23:24 ID:3fKbKi5b
Flash8を使ってフルフラッシュでコンテンツを作っておりまして、
TOPページからそれぞれloadMovieを使って、
swfファイルを指定した部分に読み込むようにしてあります。

シンボルをドラッグ&ドロップして、
正解するとムービーが流れるというクイズを作ったのですが、
TOPから読み込んだ場合のみ、正常に動作しません。
ドラッグ&ドロップはできるのですが、
正解不正解が判定されません。

TOPから読み込まずswfで確認した場合は正常に動作します。

階層の指定が間違っているのでしょうか?
初歩的ですいませんがご教授お願いします。
83 :Now_loading...774KB2010/11/07(日) 20:32:44 ID:XpCytCxj
流石にもう少し情報が無いと答えようがないと思う
例えばどうやって正解・不正解を判定しているかとか
84 :Now_loading...774KB2010/11/07(日) 20:45:29 ID:8kR++G8q
flash builderでandroidのairアプリをつくっています。
パッケージ化をGUIからではなく、コマンドラインからおこないたいと思います。
adt -package -target apk-emulator -storetype pkcs12 -keystore Android_Cert.p12 App-Emulator.apk App-app.xml App.swf
これでエミュレーター向けのパッケージができるようなのですが、これはsrcで実行すればいいのでしょうか?
また、これでいうApp.swfがないのですが大丈夫でしょうか?
85 :Now_loading...774KB2010/11/07(日) 20:51:57 ID:3fKbKi5b
>>83

そうですね、すいません><
kai1というムービークリップをtai1に重ねると正解の
ムービーが流れるようになっており、
kai1に記述しているActionScriptが以下のようになっています。

on(press){
this.startDrag();
myX =this.x;
myY =this.y;
}

on(release, releaseOutside){
this.stopDrag();
if(_droptarget == "/tai1"){
_x =this.tai1._x;
_y =this.tai1._y;
_parent.myCS.start();
_parent.gotoAndPlay(2);
trace(_droptarget);
}else if(_droptarget != "/tai1"){ //間違った場合↓↓
_x=myX; //元の場所に戻す
_y=myY;
_parent.myWS.start();
}
}


宜しくお願いしますm(_ _)m
87 :Now_loading...774KB2010/11/07(日) 21:59:10 ID:XpCytCxj
>>85
正解不正解が判定されないってのがどういう状態になってるのか分からないけど
「_dropTarget」がちゃんと機能してるか確かめてみたら?
あととりあえずelse if(_droptarget != "/tai1")はただのelseでいいと思うけど
88 :Now_loading...774KB2010/11/07(日) 22:04:20 ID:9UZNbXj/
>>85
3行目4行目x,yになってるけどそれは?

ところでマルチポストという言葉をググッといてくれ
89 :Now_loading...774KB2010/11/07(日) 22:28:04 ID:3fKbKi5b
>>87
ありがとうございますm(_ _)m
TOPから読み込まなければ正常に正誤判定されるので、
_dropTargetは機能していると思うのですが..orz
elseのご指摘もありがとうございます!!
90 :Now_loading...774KB2010/11/07(日) 22:31:39 ID:3fKbKi5b
>>88
3・4行目は記述が間違っていました;
myX = _x;
myY = _y;
91 :Now_loading...774KB2010/11/07(日) 22:33:58 ID:3fKbKi5b
ありがとうございます。
3・4行目は記述が間違っていました;実際には
myX = _x;
myY = _y;
と書いて、シンボルのスタート位置を記憶しており、
間違えた場合は元の位置に戻るようにしています。

初心者版にも同じ質問しており申し訳ありません。。
92 :Now_loading...774KB2010/11/07(日) 23:20:33 ID:bVj0aDZI
>>91
droptargetはドロップ先MCの絶対ターゲットパスを格納するプロパティ
ということで
他のSWFに読み込まれた場合パスが変わってくる
/親MC上のMC/tai1 とでもすれば動くはず

これだと子swf単体じゃ動かなくなる
試してないけどlockrootは使えないのかな?
93 :Now_loading...774KB2010/11/07(日) 23:49:07 ID:3fKbKi5b
>>92
ありがとうございます!!
droptargetのことについて何も知りませんでした><
今、92さんがおっしゃった通りにやってみたところ
TOPページからは正誤判定することができました!
本当にありがとうございます!\(^o^)/

おっしゃる通り子が単体で動かなくなってしまったので、
lockrootについても今から調べてみますね。

初心者の私に丁寧に教えてくださり、
本当にありがとうございましたm(_ _)m
94 :Now_loading...774KB2010/11/08(月) 01:18:50 ID:wKXjEnIC
>>93
ふと思ったが単体でも動かしたいなら
この場合規定値に合致するかどうかだから
||(或いは)を使って
if(_droptarget == "/tai1"||_droptarget == "/親MCの絶対パス/tai1"){}else{}
みたいので充分かな
95 :Now_loading...774KB2010/11/08(月) 12:13:50 ID:3tOFXmc9
>>93
_droptargetの補足です
教えるほうも勉強不足だったので一応w
>>94でも間違いではないけれど
通常はeval()を使ってインスタンスの参照に変換するようです
if (eval(this._droptarget) == _parent.tai1) { 〜

trace(eval(this._droptarget)+"と"+_parent.tai1)
これならパスの変化に影響を受けません
96 :Now_loading...774KB2010/11/09(火) 19:01:20 ID:UNctSDkO
教えてくださーい
0.18932072みたいな小数点の長い数値を第2位で繰り上げて0.2みたいに算出するには
どうしたらいいんでしょうか?
100 :Now_loading...774KB2010/11/09(火) 21:07:47 ID:ikTsMdap
環境:FlashCS4をWinXP-Proで使用(AS3)

1回キーボードを押したら1度WAVファイルを再生したいのですが
障害者が使用するためボタンを離すことができません。
そのため、何度もWAVファイルが再生されてしまいます。
どのように改善すればよろしいでしょうか?

stage.addEventListener(KeyboardEvent.KEY_DOWN, checkKey);

var haiObject : Sound = new hai();

if ( event.keyCode==71 ) {

haiObject.play(0, 0, null);

}
101 :Now_loading...774KB2010/11/09(火) 21:15:49 ID:0rXYisE+
ifの中でremoveEventListenerすればいいんじゃないか?
その後どっかでaddEventListenerしなきゃ次に押しても反応しないけど
102 :Now_loading...774KB2010/11/09(火) 21:39:59 ID:ikTsMdap
>>101
ご返答ありがとうございます。
以下のようにしたら、繰り返し音が鳴らなくなりましたが
二度と音が鳴らなくなりました
まずは一歩進みました

addEventListenerをどこでどのように入れたらよいか検討してみたいと思います。



stage.addEventListener(KeyboardEvent.KEY_DOWN, checkKey);

var haiObject : Sound = new hai();

if ( event.keyCode==71 ) {

haiObject.play(0, 0, null);
stage.removeEventListener(KeyboardEvent.KEY_DOWN, checkKey);
}
103 :Now_loading...774KB2010/11/09(火) 23:26:07 ID:VdDKw+DH
>>102
keydownでリムーブしたらkeyupでaddすればいいんじゃない?
104 :Now_loading...774KB2010/11/10(水) 00:30:08 ID:rFVyKC2w
SOUND COMPLETEイベントで制御でよくない?
105 :1002010/11/10(水) 06:17:47 ID:yHKpzLPR
>>103,104

ご返答ありがとございました。

103様の方法をググってできました。
これで、明日、正確には今日ですが
患者さんに使ってもらいたいと思います。

104様の方法では音が鳴りやんだら、また、再生されてしまうようでして
勉強してみます。

とりあえず、寝ます。
ありがとうございました。
106 :Now_loading...774KB2010/11/10(水) 10:45:13 ID:i1aHifdy
>>105
なんで、音ならすんだよw
>>104の方法で制御するのは、ボタンだろ。
音を鳴らしたら、イベントをリムーブして、
コンプリートでもう一度イベント設定ってことだろ。
107 :Now_loading...774KB2010/11/10(水) 22:02:56 ID:W/DP4TrP
>>106
試してないから分からないけど、キーリピートが効いてるとしたら
コンプリートの瞬間にイベント追加した場合キーが押されてる判定になってすぐ再生始まっちゃうんじゃ無いの?

本来の動き的にもキーが離された瞬間にイベント追加する方が正しい気がする
108 :Now_loading...774KB2010/11/11(木) 05:17:06 ID:bZApXtVh
プリミティブ型の変数をメソッドの引数として参照渡しする方法はありますか?
110 :Now_loading...774KB2010/11/11(木) 11:29:37 ID:Vt+gIufO
>>107
すまん。書き方が悪かったのか、>>104書くだけでわかってくれると思ってた。

で、キーリピートの話って出てきてないんだが、それは一体どこから?
111 :Now_loading...774KB2010/11/12(金) 02:04:38 ID:8ileN5w7
ステージにシンボル置いてそれを動かすのと、リンケージからシンボルを書きだしてaddChildして動かすのとCPU的にはどっちがいいんでしょう。
112 :Now_loading...774KB2010/11/12(金) 11:54:50 ID:NovVGuJJ
CPUにはそれ程かわらんとおもうけど、
メモリ的にはリンケージが有利だったとおもう。
なんかで読んだ。
114 :Now_loading...774KB2010/11/15(月) 02:41:59 ID:KVsUyB7V
テキストフィールドのautoSizeについてです。

テキストフィールドの枠のサイズを固定しながら
右寄せにする方法はあるでしょうか?

具体的にいうと今のところ、
枠のサイズを固定には「テキストフィールド.autoSize = TextFieldAutoSize.NONE」、
右寄せにするには「テキストフィールド.autoSize = TextFieldAutoSize.LEFT」

にするやり方しか知らないので、
両方同時にするにはどうするのかが判りません。

どなたか、ご存知の方はいらっしゃいますか?
115 :Now_loading...774KB2010/11/15(月) 03:08:07 ID:rBme8gRP
>>114
TextFormatのalignってプロパティで段落の整列の設定ができて、TextFormatAlign.RIGHTにすると右寄せの設定
それを設定したTextFormatのインスタンスをsetTextField()とかで適用してやればいいんじゃなかったかな
116 :Now_loading...774KB2010/11/15(月) 03:53:46 ID:3W26PjJo
すみません、質問させてください。
ttp://tarohoriuchi.com/
のように、マウスカーソルで背景が動くものを作っていて、
http://hfm-kenchan.com/Lesson/log_qa/D0407231.htm

http://hfm-kenchan.com/Lesson/log_qa/D0601112.htm
の応用で出来ると思っていたのですが、なかなかうまく行きません。

背景に置かれた画像が、ウィンドウサイズに合わせた状態で比率を変える事無く拡大縮小し、
かつ、余白が見える事無く動かすということで、
Stage.scaleMode = "noScale";
Stage.align = "LT";
を1フレーム目に

背景を置いたムービークリップに
onClipEvent (enterFrame) {
this._x += (_root._xmouse*-1800/1000-this._x)/10;
this._y += (_root._ymouse*-300/1000-this._y)/10;
}
という感じで記述しています。
どなたかご教授頂けないでしょうか...
117 :1142010/11/15(月) 11:31:04 ID:KVsUyB7V
>>115

あ、なるほど。できました!
ありがとうございます。

118 :Now_loading...774KB2010/11/15(月) 13:44:50 ID:+JYCC0qy
FlexBuilder3でAir2.5に対応したアプリケーションを開発することは可能ですか?
SDKをダウンロードして組み込んであげればよいのでしょうか?
119 :Now_loading...774KB2010/11/16(火) 04:49:03 ID:YgUDFDxU
今までas2を使っていて最近as3を使い始めました。
現在、下記の現象に悩まされています。

(1)外部のswfをURLRequestで読み込み、addChildで表示
(2)LocalConnectionで、外部のswfと通信
(3)LocalConnectionオブジェクトをcloseで停止
(4)外部のswfをremoveChildで削除

(1)〜(4)まで動かした後、再び(1)に戻ろうとすると(2)で
「このオブジェクトは既に接続されているため、接続できません」と
エラーが出ます。それと、(4)の削除された後も外部のswfの
イベントが動いています(外部のswfのtraceが削除後も表示されている)

そこで、質問ですが、
・読み込んだ外部のswfを完全に削除(停止?)する方法は?
・LocalConnectionオブジェクトをcloseで停止していますが、
 上記エラーが出ないように切断する方法は?

よろしくおねがいします。
120 :Now_loading...774KB2010/11/16(火) 22:07:10 ID:B6VjYtM4
Box2Dで多角形を生成して衝突判定をしたいのですが,
一度試作は上手く行ったもののどこからか判定が効かなくなってしまいました。
若干摩擦判定ができてるような気がするのですが原因がよくわかりません。

Box2Dに詳しい方がおられましたら教えてください。
http://uproda.2ch-library.com/314721YEz/lib314721.zip
121 :1192010/11/17(水) 10:32:56 ID:2Cx8hwzq
LocalConnectionエラーはConnection名を毎回変える事により、
エラーが出なくなりました。
しかし、(4)の削除された後も外部のswfのイベントがまだ
動いています。(1)〜(4)をループさせると、見た目では
消えていますが、裏で複数のswfが動いているように感じます。
読み込んだ外部のswfを完全に削除(停止?)する方法は無いのでしょうか?
122 :1202010/11/17(水) 11:11:11 ID:UJ50A5yM
ちょっとごちゃごちゃしていたので、改良したものをアップロードしました。
こちらを見てアドバイスお願いします。
http://www.uproda.net/down/uproda168960.zip.html
123 :Now_loading...774KB2010/11/17(水) 11:18:32 ID:TCcSDILQ
>>121
LocalConnectionで繋いだ先の、
削除したいイベントを削除するファンクション準備すれば良くないか?
切断する前にそれを呼び出したらいいだけかと。
124 :Now_loading...774KB2010/11/17(水) 15:47:59 ID:kPxOgEgg
直接AS3に関係する事なのかわからないのですが、質問です。
現在
ttp://poisoncode.blog77.fc2.com/blog-entry-28.html
のページを見ながらテトリスを作っているのですが、ソースの途中にある
if (fieldMap[my][mx] && fieldMap[my][mx] != currentIndex + 1) return true;
else return false;
の条件の部分がいまひとつ理解できません。

fieldMap[my][mx]かつfieldMap[my][mx]が currentIndex + 1でない時という意味ですよね?
その前半のfieldMap[my][mx]かつというのがわかりません。
fieldMap[my][mx]が真の時という事なのでしょうか?
125 :Now_loading...774KB2010/11/17(水) 20:56:52 ID:7nhmX2Ni
fieldMap[my][mx]が真と判断される時ってことだけど、
真になる値ってのが、trueだったり文字だったり、0以外の数字だったり。
詳しいことはググるが吉
126 :Now_loading...774KB2010/11/17(水) 22:53:17 ID:kPxOgEgg
>>125
ありがとうございます。
真になるってのはわかったのですが、この場合はfieldMap[my][mx]に値があるかどうかだけを見ているのですか?
ググったのですが演算子を使ってない条件式を見つけられなかったので・・・
127 :Now_loading...774KB2010/11/18(木) 15:47:59 ID:DyTqu2Co
質問です。
AS3.0で、ボタンにキーボードのイベントを割り当てているのですが、
画面を一度クリックしないと、キーボードが反応しません。どういう現象ですか?

ソース
stage.addEventListener(KeyboardEvent.KEY_DOWN,onKEY);
function onKEY(e:KeyboardEvent):void {
if(e.keyCode==Keyboard.UP){

gotoAndStop(1);

}
}
129 :Now_loading...774KB2010/11/18(木) 17:59:57 ID:n4pc+wIN
すみません、超初心者に教えていただけますでしょうか。(cs4 as3.0です。)
2つのjpegをMovieClipとして表示したいのですが最後の(2回目に読み込んだ)画像しか表示されません。
for文の2を1すると1回目の画像が表示されます。
両方の画像を表示させるにはどこを修正したらよいのでしょうか。
よろしくお願いします。
131 :Now_loading...774KB2010/11/18(木) 18:26:57 ID:Z8XB0XDZ
同じLoader使い回してるからじゃね?
132 :Now_loading...774KB2010/11/18(木) 18:50:12 ID:9CBn527q
FlexBuilder3でAir2.5に対応したアプリケーションを開発することは可能ですか?
SDKをダウンロードして組み込んであげればよいのでしょうか?
133 :Now_loading...774KB2010/11/18(木) 19:19:08 ID:sCfrlMD2
AIR2.0はできたから、やってみたら?
FlashBuilderにしちゃったから、おれは試せない。
134 :Now_loading...774KB2010/11/18(木) 19:42:03 ID:n4pc+wIN
>>131
ありがとうございます。
Loader初期化したらできました。

135 :1322010/11/18(木) 20:05:39 ID:9CBn527q
>>133
ありがとうございます。

もすこし質問させてください。
AIR2.0はできたとの事ですが、
FlexBuilder3にFlexSDK4を入れたとの解釈で宜しいでしょうか?

同じActionScript3なのに、FlexSDK3とFlexSDK4で
クラスライブラリが異なるのに戸惑っています。

Javaのバージョンがあがっていくのとは
また違う感じなんでしょうか。
136 :Now_loading...774KB2010/11/18(木) 20:24:44 ID:sCfrlMD2
>>13
FlexSDK4を入れたと思うんだよね。なんか自信がなくなってきた。

デザインビューでうまくデザインできないとか言う問題があっただけで、
クラスライブラリが異なるってところがわからない。
もしかしてSparkコンポーネントのことを言ってるのかな?
137 :1352010/11/18(木) 20:39:24 ID:9CBn527q
>>136

ありがとうございます。

なるほど。デザインビューで少し不具合があるんですね。
ひとまずFlexSDK4を入れてみようと思います。

クラスライブラリに関しては、
例えばNativeProcessクラスなんですが、
FlexSDK4にはありますが、FlexSDK3にはないようです。

これが仰られているSparkコンポーネントになるのでしょうか?

138 :Now_loading...774KB2010/11/18(木) 21:11:41 ID:sCfrlMD2
>>137
アンカー間違えてたゴメン。

>NativeProcess
これもウリのひとつだし、
SDKのバージョンが上がって機能が追加されたことに何か驚くことがある?

Javaだって、Genericやら拡張for文やら書き方が変わるような変更があったし、
nioやらLoggingやらのAPIの追加もあったし(例が古いけどね)

Sparkは昔のmxコンポーネントにあたるもの。
スキンを導入して、外観を簡単に変更できるようになった。
139 :1372010/11/19(金) 10:26:11 ID:2VMyhqCU
>>138

ありがとうございます。
少し変な固定観念に縛られていたみたいです。

SDKのバージョンがあがることで
ライブラリが増えていくことはしっくりきたのですが、
FlexSDK3でも4でも
ActionScriptは3のままだったので
「ActionScriptのバージョンが上がってないのに
なんでライブラリが増えてるんだろう」
と、悶々としておりました。
Javaであれば
SDKのバージョンが上がると、Java5とかJava6とか、言語のバージョン(?)も
上がってるんだなって分かりやすかったものですから・・・。

ActionScript3といのは言語仕様のバージョンで
FlexSDKはライブラリ群のバージョンになっていて
それぞれ別物という風に理解しておけばよいのかなと
今は思っています。

間違っていたらご指摘頂けるとうれしいです。
140 :Now_loading...774KB2010/11/19(金) 15:44:27 ID:P0hSxw36
FlexSDKってのはActionScript3とは別物っていう認識で良いと思う。
FlashCSの方に入ってるクラスでFlashCSでしか使えないものがあるし、
FlashBuilderでしか使えないクラスがあるしね。(両方持ってれば使えるけど。)
141 :1392010/11/19(金) 17:33:55 ID:2VMyhqCU
>>140

> FlashCSの方に入ってるクラスでFlashCSでしか使えないものがあるし、
> FlashBuilderでしか使えないクラスがあるしね。(両方持ってれば使えるけど。)

初耳です!びっくりしました!
そんな違いまであるんですね!

うーむ。奥が深いですね。。。

そういう情報はどこかにまとめられていたりするのでしょうか?
142 :Now_loading...774KB2010/11/19(金) 17:45:15 ID:P0hSxw36
CSではイージングが標準で準備されているのに、
Flexだと入ってないとかあるよ。

Flash-jpとかFlexUGとかのぞいてたらわかるかもねぇ。
143 :Now_loading...774KB2010/11/19(金) 17:53:34 ID:7NaQrvtJ
AS3でprintAsBitmap = trueで印刷をする場合、dpiの変更といったことは出来ないんでしょうか。
印刷対象のサイズは3000x4000くらいはあるんですが、そのまま印刷しようとすると盛大にはみ出し、
紙のサイズに合わせようとするとサイズを縮小しなければならないため、かなり荒く印刷されてしまいます。
144 :Now_loading...774KB2010/11/20(土) 12:59:23 ID:rQgUueUV
>>143
ベクター形式以外のデータとかアルファが必要ならビットマップデータで印刷するしかないので
DPIの変更はできなかったと思う

Flashから直接印刷しなくてもいいなら、bitmapDataを一旦外部プログラムに渡して
PNGなりJPGなりに変換してダウンロード>パソコンの標準機能で印刷
で高画質で印刷できる
145 :1412010/11/20(土) 14:51:48 ID:1n8jdNLc
>>142

ありががとうございます。
こまめに情報を拾っていくようにしていきます!
146 :Now_loading...774KB2010/11/20(土) 16:21:02 ID:hmCw7AtP
Flexについての質問...をしようと思っていましたが、書きながら自己解決できたので、誰かのためにメモ。
RichEditableTextをスクロールさせたい場合は、
<s:Scroller >
<s:RichEditableText />
</s:Scroller>
のようにして使います。
初歩的かつスレ汚しですみません。
147 :Now_loading...774KB2010/11/21(日) 00:05:41 ID:1toCaeUg
>>146
それね、Sparkコンポーネントからなんだよね。
FlashBuilder4になってからってこと。
namespaceがsではじまる物=スパークコンポーネント(この場合、<s:RichEditableText>)
でスクロールさせたい物には、全てScrollerが必要になった。
これのおかげで、勝手にスクロールバーが出て面倒とかいうことが無くなったけど、
Flex3でCanvaまかせだったりすると、わからなくて苦労したw
148 :Now_loading...774KB2010/11/21(日) 03:47:06 ID:gxnxdNzr
>>147
Sparkからなのは知りませんでした。どおりでググッても、
「自動でスクロールバーがでる」という情報ばっかりだったんですね・・・。
149 :Now_loading...774KB2010/11/21(日) 15:07:09 ID:MNMYcOt/
質問です。
As3で関数の引数にObjectのデフォルト値入れるとエラーでてしまうのですが、引数でObjectにデフォルト値ってセットできないのでしょうか?
下記ソースになります。
function hoge(obj:Object = {name:"hoge"}):void{
trace(obj[name])
};
よろしくお願いします。
150 :Now_loading...774KB2010/11/21(日) 16:20:57 ID:ohvMsSKY
>>149
オブジェクトの書き方それであってる?
151 :Now_loading...774KB2010/11/21(日) 16:55:15 ID:OpuCRZzC
>>149
エラー文も書けばいいのに
152 :Now_loading...774KB2010/11/21(日) 17:11:28 ID:MNMYcOt/
>>150
下記で値は取れてるので、オブジェクトの書き方は問題ないと思います。
var obj:Object = {hoge:5};
trace(obj["hoge"])

>>151
エラーは、1047:パラメータ初期化子が不明か、コンパイル時定数ではありません

これって、引数ではnewできませんよってことなのでしょうか?
153 :Now_loading...774KB2010/11/21(日) 17:18:35 ID:MNMYcOt/
連投ですみません。
諦めて動けばいいよ思考になり、デフォルト値をnullにして中で処理することにしました。
function hoge(obj:Object = null):void{
if(obj == null) obj = {name:"hoge"}
trace(obj["name"])
}

ありがとうございました。

154 :Now_loading...774KB2010/11/22(月) 03:37:52 ID:TT7WypJE
質問です
自分は普段AS3でデータ型を省略してるのですが(データの入れ間違えなんてしませんし誰にも見せないので)
各所覗いてると省略してるのは自分だけのような気がして不安になってきました。
AS3でデータ型を書かないとパフォーマンスが落ちるといったことでもあるのでしょうか?
逆にその分スクリプトの容量が1割減るのでパフォーマンスが上がるようなことはないですか?
155 :Now_loading...774KB2010/11/22(月) 03:47:39 ID:CLJbHRWd
型指定することでバイトコードが最適化されてパフォーマンスが上がる
と言われています。変わんねーよって人もいます。
詳しくはググった方がいい・・・。

あと、書いてるときは間違えない自信があったとしても、
あとで弄るときは間違えるかもしれませんよ。
せっかくコンパイラーがチェックしてくれると言ってるんだから、させてあげればいいと俺は思う。
156 :Now_loading...774KB2010/11/22(月) 11:39:17 ID:Wko04cQ8
いや、パフォーマンスは確実に変わる。遅くなる。
とは言っても、ループを大量に回すとかやった場合ではあるが。

さらに、スクリプトってコンパイルされるのだから、
元のテキストが短くなっても、実際のバイトコードが
短くなるかどうかはわからないし、
バイトコードが短いから速いとも限らない。
ループ3行と、10行のプログラム、どっちが速いとかわからんでしょ?

FlashBuilder等のIDEを使って書けば、代入できる候補のリストとかを絞り込んでくれるし、
>>155が書いているようにコードミスが確実に減るし。

デメリットが無くて、メリットばかりなんだから
使わない手は無いと思うんだけどな。
157 :Now_loading...774KB2010/11/22(月) 17:49:17 ID:w7kM+4hd
FlashCS4(AS3,Player10)をWinXP-Proで使用
特にAS3やPlayer10に限った事では無いのですが、マウスのstartDrag()によるインスタンス(MC)
の移動による描画が時々MCと一致せず困っています。

今やっているのは、ある点AからRだけ離れた所にMC(B)を置いて、Bをドラッグして水平移動し、
その時々のA→B間距離を半径rとした円環(円周)を描くというものです。
(つまり、マウス操作により円環が大きくなったり小さくなったりする) AAで書くと下の感じです。

           |円周
           |
 A・ -- R -- [B]
           ↑ (矢印記号はマウスポインタ)
           |
           |円周

通常は円周描画の拡大縮小がBの動きに追従しているのですが、一旦マウスがBの領域から外れ、
再ドラッグすると円周の半径方向位置とBの位置が一致せずズレた状態が続きます(下記)

                 |円周
                 |
 A・ -------- r -------- [B]
                   ↑ 
                 |
                 |円周

希望を平たく書くと、『描画を正気の状態に戻す』ということです。試しにフレームレートを増やしたり、
updateAfterEvent()を使いましたが駄目でした。 何かアドバイス頂けたら幸いです。
158 :Now_loading...774KB2010/11/22(月) 18:04:02 ID:I00h+2fT
>>157
AB 間の距離を使っちゃダメなの?
159 :Now_loading...774KB2010/11/22(月) 19:02:53 ID:w7kM+4hd
>>158
レスさんきゅう。
円周描画にはご指摘の通りAB間距離を使っています。

原因が分かりました。
MC[B]に対して、マウス押す/放す(MouseEvent.MOUSE_DOWN/UP)の信号をDispatchEventで
描画関数に伝えていますが、MOUSE_DOWN/UPの識別を横着こいてフラグ管理していたのが原因
でした。

厳密にMOUSE_DOWNとUPを別々のDispatchEventで送受信したところ、円周描画がスムーズに
追従するようになりました。
160 :Now_loading...774KB2010/11/22(月) 23:21:10 ID:0ZqGVyph
AS3のTimerについての質問をさせてください。

以下のようにある関数を通して、タイマーを順次呼び出すにはどのように実装すればよいのでしょうか?
半日悩んだのですがうまくいきません。どうか助けてください。
[内容]
var myArray:Array=[];
myArray.push(['log1',1000]);//traceしたい内容,traceの遅延ミリ秒を設定します。
myArray.push(['log2',2000]);
myArray.push(['log3',3000]);
myTraceFunction(myArray);
[望む結果]
関数呼び出し→(1000ミリ秒経過)→trace('log1')→(2000ミリ秒経過)→trace('log2')→...

161 :Now_loading...774KB2010/11/23(火) 00:28:28 ID:WNvCegCi
>>160
各配列の要素は必ず[文字,数値]としたいの?
もし文字だけ出力するならこれで行けると思うけど

timer_count:int = 0;
timer:Timer = new Timer(1000, 0);

timer.addEventListener(TimerEvent.TIMER, timer_func);

function timer_func(evt:TimerEvent){
 timer_count++;

 for(var i:int=0; i<myArray.length; i++){
  if(timer_count == 1000*(i+1)){
   trace(myArray[i]);
  } 
 }
}

要素を文字、数値という順番が決まってるなら
trace(myArray[i]);のところはi*2で偶数にして
1000*(i+1)のところはmyArray[i*2+1]*(i+1)で奇数にすればいいんじゃない?
162 :Now_loading...774KB2010/11/23(火) 00:38:35 ID:Jt73XTiI
こちらの例えが悪く申し訳ないです。
myArray.push(['hoge',60]);
myArray.push(['foo',200]);
myArray.push(['bar',30]);

このように数字に規則性はないつもりでした。
また、配列の中身は[String,uint]で固定です。

この設定でもう一度考えていただけますか?
どうぞよろしくお願いします。
164 :Now_loading...774KB2010/11/23(火) 00:51:44 ID:KPeUC44y
function myTraceFunction(str:String, arr:Array):void{
trace(str);
if(arr && arr[0]){
  settimeout(myTraceFunction, arr[0][1], arr[0][0], arr); // 設定時間後に再起呼び出し
  arr.splice(0); // arrから最初のデータを削除
}
}

こんな感じでどうだろ?
全く動作確認とかしてないし、引数の順番とかspliceの動作とかうろ覚えだけど。
そこらへんはリファレンス見ながら頼む。
spliceはsettimeoutの前にしないとだめとかいう可能性も。
165 :Now_loading...774KB2010/11/23(火) 01:01:12 ID:WNvCegCi
>>160

ならばこれでいけるよ

var myArray:Array = new Array();
var timer_count:int=0;

var timer:Timer = new Timer(100,0);
timer.addEventListener(TimerEvent.TIMER, timer_func);

myArray.push(['hoge',60]);
myArray.push(['foo',200]);
myArray.push(['bar',30]);

timer.start();
function timer_func(evt:TimerEvent){
timer_count++;
trace(timer_count);
for(var i:int=0; i<myArray.length; i++){
if(timer_count==myArray[i][1]){
trace(myArray[i][0]);
}
}
}
166 :Now_loading...774KB2010/11/23(火) 01:51:19 ID:Jt73XTiI
できました!検証に時間がかかり、お待たせしました。
>>165さんのコードですが、
hoge->foo->bar->を希望していましたが、bar→hoge→fooの順番で呼び出されてしまい、
>>164 さんのコードは
関数呼び出し→(1000ミリ秒経過)→trace('log1')→...が
関数呼び出し→trace('log1')→(1000ミリ秒経過)→...になってしまいました。

そこで双方のコードを参考にしつつ四苦八苦したところ以下の実装で動作しました。
function myTraceFunction(arr:Array,traceFlag:Boolean=false):void{
if(traceFlag){//遅延してからtraceするために初回は飛ばす
if(arr && arr[0]){
trace(arr[0][0]);
if(arr[1]){//次の配列があれば再帰呼び出し設定
setTimeout(myTraceFunction, arr[1][1],arr,true);
}
arr.shift();//arrから最初のデータを削除
}
}else{
setTimeout(myTraceFunction, arr[0][1],arr,true);//初回は遅延のみ
}
}

こちらの説明不足で意図がうまく伝わらず失礼しました。
どちらのコードも大変参考になりました。本当にどうもありがとうございました!
167 :Now_loading...774KB2010/11/23(火) 02:11:52 ID:WNvCegCi
なんか書いて損した気分...
168 :Now_loading...774KB2010/11/23(火) 02:27:39 ID:Jt73XTiI
>>167 誤解させてしまってすみませんでした。これからは気をつけます。
169 :Now_loading...774KB2010/11/23(火) 19:45:12 ID:f1QooxVf
ステージの高さと幅を動的に変えることって可能ですか?
ウェブサイト内のフラッシュでも、フラッシュプレイヤーで再生するフラッシュでもいいです。
170 :Now_loading...774KB2010/11/24(水) 04:22:20 ID:FWEry6/q
>>169
前にも似たような質問があったけど、その時は
「FLASHそのものからは動的に変えられないから、Java Scriptで表示領域を変化させる」
という解決法だった気がする。
171 :Now_loading...774KB2010/11/24(水) 10:05:00 ID:Ik53On7o
プロジェクタでいいならdirectorにswf読み込むだけで
windowの移動拡大縮小が可能になるよ(buddy api使用)
172 :Now_loading...774KB2010/11/25(木) 00:21:17 ID:lYnR47B5
ASってタイムラインとかルートとかからんでくるとややこしいのですが
ASの面倒くささを軽減するライブラリ集とかないですか?
173 :Now_loading...774KB2010/11/25(木) 00:39:31 ID:rjhmsPiF
>>172
as3 frameworkとかフレームワークで検索しよう
174 :Now_loading...774KB2010/11/25(木) 01:22:01 ID:CTozBv6O
FlexSDKでActionScriptプロジェクトで作ってれば、
ややこしい事できないけどな。
175 :Now_loading...774KB2010/11/26(金) 02:50:22 ID:aXD7kERj
ASってファイル操作ができないみたいですが
JAVAやJAVAScriptを呼び出してファイル操作やファイル実行することって可能ですか?
176 :Now_loading...774KB2010/11/26(金) 03:21:37 ID:aXD7kERj
捕捉です。やりたいことはローカルからスタンドアロンアプリとしてswfを起動させて
ローカルHDD内のフォルダ内のファイル一覧を読み込んだり、ファイルを保存したりしたいです。
airは使いたくないのでflash単体でできませんか?
178 :Now_loading...774KB2010/11/26(金) 05:42:06 ID:aXD7kERj
作りたいのはインターネットで配布してローカルPCで実行するアプリなんですが
airだと確か規約でネット配布のソフトにairラインタイムのインストーラーを同梱できなかったと思います。
そうするとユーザーから見るとインストールとか面倒かなと。
179 :Now_loading...774KB2010/11/26(金) 07:50:38 ID:Ley6VMLU
どこで何を読んだか知らんが同梱できるよ
http://www.adobe.com/jp/products/air/runtime_distribution_faq.html

Webで配布ならシームレスインストールもあるし。
180 :Now_loading...774KB2010/11/26(金) 08:36:52 ID:aXD7kERj
あれ、そうなんですか?ゆとりなので規約をよく理解できませんでした。
AIRは不人気なので敬遠してたのもあるのですが、試しに導入してみたら悪くなかったので、
とりあえずこれで作ってみたいと思います。
181 :Now_loading...774KB2010/11/26(金) 12:20:16 ID:5EAsCPn+
AIRが不人気というが、この手の奴で流行っている他の奴を知りたい。
みんな似たようなもんだとおもうが。
182 :Now_loading...774KB2010/11/26(金) 18:58:17 ID:/RlzuLln
FlashCS4,ActionScript 3.0,WinXP

curveToで描いた曲線の頂点の位置AとコントロールポイントBの位置関係(ABの関係)を
把握するにはどうしたら良いでしょうか?
例えば「へ」の字型線の頂点にAがあり、その上にBがあるとき、

  ○ B
  
   . A(本当は線の中にある)
  へ

Aの位置よりBの位置を求めたく思います。 ※目標は曲線グラフを描くことです。
「ActionScript 3.0 curveto 頂点 位置」でググりましたが分かりませんでした。
183 :Now_loading...774KB2010/11/26(金) 19:45:55 ID:5EAsCPn+
スプライン曲線じゃいかんの?
ライン上の点を結ぶ曲線になるから、グラフ描くなら制御しやすいとおもうが。
184 :Now_loading...774KB2010/11/26(金) 23:29:58 ID:SmiPzgR9
次のイベント・ハンドラーを実行してみたところ、「処理が遅くなっている」という旨の
警告が出ました。

onMouseUp = function (){
; trace(++i);
; while (true);
}

このことから、割り込み処理は素早く済まさなければならないことは分かったのですが、
割り込み処理を早急に終了して、その後で何か希望する処理を実行させる方法は有るので
しょうか?

gotoAndPlay() を試してみましたが、割り込み処理を終了するわけではないようです。
185 :Now_loading...774KB2010/11/26(金) 23:55:31 ID:5EAsCPn+
関数を書いて、それを呼ぶ形式にして、その関数の完了イベントと、そのイベントハンドラを自分で実装する。
基本的にはこんな感じ。

汎用的に書き始めると恐ろしいことになるから、適当にライブラリを使った方が良い。

ここら辺から好きなのを選ぶと良い。
http://digitechlog.com/2010/03/12/7-asynchronous-processing-open-source-actionscript-library.html

186 :Now_loading...774KB2010/11/27(土) 00:18:42 ID:a0WiUeGT
textAreaのコンポーネントをクリックしたときにフォーカスの枠を非表示に
するにはどうすればいいですか?mytxtarea.focusEnabled=falseにしても無理でした。
AS3.0です。
187 :1842010/11/27(土) 00:21:10 ID:VNX11zp6
>>185

本当に物凄い勢いと言うか物凄い早さでの回答ありがとうございます。
紹介してもらった記事は、これから読んで勉強します。
188 :1822010/11/27(土) 00:27:06 ID:hSM08HHK
>>183
さんくす。
スプライン曲線でググって幾つかサンプルが見つかりました。
試してみます。
189 :1842010/11/27(土) 12:25:56 ID:imszsrAY
>>184 のイベント・ハンドラの件の続きです。

イベント・ハンドラ内の処理を短時間で終わらせるために、次のように変更して
みました。

flag = false;
onMouseUp = function (){
  trace("mouse up");
  flag = true;
}

そして時間の掛かる処理 while (true); は、別のフレームに持って行きました。

if (flag){
  trace(++i);
  flag = false;
  while (true);
}
gotoAndPlay("loop_start");

これで、イベント・ハンドラ実行中に次のイベントが発生する危険性は充分小さく
することが出来たはずですが、それでも前回と同じく「処理が遅い」という警告が
出ます。

さらに、イベント・ハンドラ内の trace() の反映が、異常終了時まで待たされます。
何故なのでしょうか? 遅くともイベント・ハンドラ終了時には trace() は完了
していそうなものですが。

どうも「while (true);」が悪さをしているようですが、納得出来ません。
190 :Now_loading...774KB2010/11/27(土) 13:18:35 ID:7fGRmn6E
>>189
AS2.0?
とりあえず、while (flag)じゃないの?
やりたいことよくわからんけど、onEnterFrameとか使うとこなんじゃないの?
ループ処理終わるまでは、他の処理入らないと思う
192 :Now_loading...774KB2010/11/27(土) 15:14:48 ID:JVzaWPA9
色が段階的に変化している正方形をMCの中に並べています。
下のようにしたところ、黒から青に段階的に変わった後少し青みがある黒になってしまいます
その理由はわかるのですが、
虹のようなグラデーションに変化させるにはどうすればよいでしょうか?

for(var i=0; i<100; i++)
{
    var box=new MovieClip();
    box.graphics.lineStyle(1,0x0000FF);
    var color = 0x000000+0x000010*i;
    box.graphics.beginFill(color);
    box.graphics.drawRect(0,0,80,80);
    box.x=10+90*i;
    
    stage.addChild(box);
}
194 :1842010/11/27(土) 17:08:53 ID:imszsrAY
>>190
>AS2.0?

残念、AS1です。某フリーソフトを使っています。そういう問題でしょうか。

なお、念の為言っておきますが、while (true); を実際のアプリケーションで使おう
としている訳ではありません。これは、時間の掛かる処理として模擬的に書いただけ
です。

>ループ処理終わるまでは、他の処理入らないと思う

イベント割り込みの入るタイミングは、どうなっているのでしょうかね?
どこかにドキュメントなど無いでしょうか? オライリー本をパラパラと眺めてみま
したが、使い方しか書いていませんでした。
195 :Now_loading...774KB2010/11/27(土) 17:22:42 ID:7fGRmn6E
>>194
無料ならFlex使ったら?
Flash Playerはシングルスレッドで動作するから、割り込みという考え方が違うのでは?
何をやりたいかをはっきりさせれば、Flashではどういう方法で実現できるか
わかると思うけど
ドキュメントならLiveDocs見るのがはやいんじゃない?
196 :1842010/11/27(土) 18:26:16 ID:imszsrAY
>>195

Flex という名前は時々目にしましたが、フリーだとは知りませんでした。
検討してみます。

LiveDocs は Adobe のサイトのマニュアルですね? それなら、今も、このウィンドウ
の下に開いています。しかし、これも使い方しか書いていません(読み方が不充分なの
かも知れませんが)。
197 :Now_loading...774KB2010/11/27(土) 18:45:45 ID:WEWVw3xV
フラッシュの作品って、winでもmacでもlinuxでも1ドットの狂いもなく再現されるの?
198 :Now_loading...774KB2010/11/27(土) 23:07:04 ID:iYDexJmd
>>197
実行プログラムであるFlashPlayerはOS毎に多少チューニングされるけど、共通して
コーディングの通りに動く。また、Winで生成したFlashPlayerもMacで動く。

これはHDDに例えるとモーターと記録部分みたいなもの。
つまり、バッファローのHDDと、IO-DATAのHDDのモーターは同一のものであっても、書き込み
や読み込みエラーはユニットの部品に依存する。

まあ、膨大な浮動小数点計算をバンバンやる描画なら狂うかも知れ無いが、今のところ
そんな場面には遭遇したことは無い。

試しに見てくれ→http://beautifl.net/
199 :Now_loading...774KB2010/11/27(土) 23:54:19 ID:98WQJt3s
>>186
mytxtarea.focusRect = false;
ttp://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/flash/display/InteractiveObject.html#focusRect

試してないけど多分これかな?
200 :Now_loading...774KB2010/11/28(日) 12:46:06 ID:+8fgUxBB
Flash買ったからaction script3の習作って事でブロック崩し作ってるんだけど、
それぞれのクラスの連携どうしてる?

ボールクラス駆動時に
Ball.Update( Bar,Block );
みたいに、他のクラスの参照渡してるんだけど、少し気持ち悪いんだよなー
おそらくセオリーに反してるよね

あと、実行後にエラーが判る物が多すぎて面倒くさいねぇ
Cみたいにコンパイルエラー吐いてくれない


201 :Now_loading...774KB2010/11/28(日) 13:11:52 ID:0rXqFecv
コンパイラーでわかるエラーはコンパイルエラー吐いてくれます
わからないものはどうしようもない
そんなのどんな言語だって同じだと思うが
202 :Now_loading...774KB2010/11/28(日) 15:00:40 ID:+8fgUxBB
>>201
そうなんだけど、アクションスクリプトの方が動かさないと判らないエラーが多くない?

無い関数を呼ぶとか、無い変数を呼ぶとか、Cだったら動かす前にわかるけど、アクションスクリプトは動かしてからエラーが判明する
203 :Now_loading...774KB2010/11/28(日) 15:57:32 ID:pxeNUDAj
無い関数・変数とかならコンパイルエラーはいてくれるよ。
設定がまずいんじゃない?

Flex Builder 3使用者より。
204 :Now_loading...774KB2010/11/28(日) 16:25:34 ID:+8fgUxBB
>>203
そうなんだ。
Adobe Flash CS5使ってるけど、エラー吐いてくれないんだよなー
設定みてみよう
205 :Now_loading...774KB2010/11/28(日) 19:43:08 ID:AYeIaKmB
親とクラス、クラス同士のやりとりは、どこからどこまでを、どこに割り振るかが
未だに自分の中で確立してないから、毎度ソース見直してどこにどう書いたか忘れるわ。
206 :Now_loading...774KB2010/11/28(日) 20:00:56 ID:+8fgUxBB
>>205

//ボールクラス
Ball.Update( Bar,Block );

//ブロッククラス
Ball.Update( Ball );

みたいに、相互に渡してるんだけど行儀良くないよね?
親クラス作って、そのレイヤーに各クラスの構造体もどきを宣言するわけにもいかなしなぁ


207 :Now_loading...774KB2010/11/28(日) 22:27:44 ID:Hs90nTHy
>>198
おおよかった。HTMLみたいにブラウザによって動作が違うのはもう耐えられないw
レスどうもです。
208 :Now_loading...774KB2010/11/29(月) 00:50:56 ID:cZRc71SP
タイムラインにコード書いてるんだろ。MovieClipはダイナミックだからエラーでねー
210 :Now_loading...774KB2010/11/29(月) 03:12:38 ID:k/F9JoqU
>>206
設計以前にAS3のコーディング規約から外れすぎてるのか
そのコードをどう読んだらいいのかわからない
Ball Bar Block はそれぞれ変数なのかクラスなのか
211 :Now_loading...774KB2010/11/29(月) 11:26:41 ID:5g1R45sh
>>210
クラスの参照を渡してる。
でも、俺の駄目なクラス設計はおいといて、
相互に干渉するクラスってどういう風に設計すればいいのかな?
212 :Now_loading...774KB2010/11/29(月) 14:34:21 ID:kSN1VGbE
>>192
RGBじゃなくてHSBを使うと虹のような色変化が簡単にできる
RGB←→HSBの変換は簡単な式なので、
HSBで変化させた値をRGBに変換して処理に渡せばOK
213 :Now_loading...774KB2010/11/29(月) 22:55:05 ID:Ha77juhF
>>211
クラス設計の話でクラス設計はおいておくってどういうことだ!!
214 :Now_loading...774KB2010/11/29(月) 23:20:28 ID:dEF80y46
>>213
俺のしょぼクラスはおいといて、AS3ではどういう風に相互干渉させてるのかって事を知りたいのさ
215 :Now_loading...774KB2010/11/30(火) 00:37:41 ID:WMZWWi0v
たとえばどういう例が考えられる?
>>206ではさっぱり状況が分からない
216 :Now_loading...774KB2010/11/30(火) 01:55:09 ID:F9Vs5Rn1
素直にgetterとsetterをstaticにしておいてどこからでもメソッド叩けるようにすればいいじゃない?
そもそも相互に干渉するクラスってのが何を指しているのかわからない。
217 :Now_loading...774KB2010/11/30(火) 11:32:08 ID:KlvjJ6gw
>>216
おい。staticにする意味わかってるかい?
そのクラスのプロパティの現在の状態を返すことがgetter,setterの意味なのに、
そのクラスのプロパティもstaticにしないといけなくなって意味が無くなるでしょ。
値が固定的であれば、そもそもgetter,setterが必要無い。

>>215
まったくだ。
218 :Now_loading...774KB2010/11/30(火) 18:42:09 ID:qPhK2Tfj
クラス生成したらアレイに突っ込んでって、
クラスから親経由で、アレイに突っ込んだ各クラスにforで命令送るとかでもいいと思うけど・・・。
親でBallArray宣言、ballクラス作成したらpush、
クラス側から for(略){ 親.BallArray[i].関数(引数) } みたいに。

まぁ上の人みたいにstaticやフラグ駆使するなりいくらでもやりようはあるだろうけど。
219 :Now_loading...774KB2010/11/30(火) 19:55:24 ID:Ljs20/HG
俺プログラムとかまだまったく初心者だけど
action script マスターしたら企業とかでプログラマとして雇ってもらえるの?
220 :Now_loading...774KB2010/11/30(火) 19:57:48 ID:KlvjJ6gw
マスターしたら、雇うところはどこでもあるだろうが、
言語仕様完璧なだけではマスターとは言えないから、難しいモンだな。
221 :Now_loading...774KB2010/12/01(水) 01:57:11 ID:LBwiXM0T
>>217
ごめん、俺の勉強不足だ。
とりあえずソース書いた。

package{
import flash.display.MovieClip;
public class Ball extends MovieClip{

private static var _hoge:Ball;
public function Ball()
{
hoge = this;
}

public static function set hoge(hoge:Ball):void {
_hoge = hoge;
}

public static function get hoge():Ball {
return _hoge;
}
}
}

これでインスタンスをどこのクラスからでも参照できるからpublicなものなら参照も可能って言いたかったけど、基本クラスの場合はダメだねw
そもそもの>>206の意味がよくわかってないので的外れだったらごめん
正直独学でかなり不安なので俺にも教えてくださいw
222 :Now_loading...774KB2010/12/01(水) 15:12:01 ID:cuX3cD1k
>>221
ボールをシングルトンにする意味は全くないのに>>206のはシングルトンに
見えるので話がこんがらがってるな
とりあえずそこはMovieClipじゃなくてSprite使おうよ

>>206 はたぶんオブジェクト間の衝突の扱いについて聞きたいんだと思うが
そんなもん規模によるから一概には言えないんだよな
PONGレベルならどんなヘボコードでも動くだろうし
逆に高度なものならBox2Dのような物理エンジンでも参考にすればとしか
223 :Now_loading...774KB2010/12/01(水) 15:59:46 ID:v4vIsqK+
>>221
>>222の指摘もあるように、シングルトンに見えそうでもあるけど、関係ないよね?
インスタンス化される前提なの?意図がつかめない。
もう少し、具体的な条件を書いてくれるとわかりやすいんだけど。
226 :Now_loading...774KB2010/12/02(木) 02:28:46 ID:pbqGD51J
>>222
すまん、>>222のおかげでようやく理解できたと思う。
>>206のが、クラス外のにどうやってアクセスするのがいいのって見えてたっすw
あとSpriteの忠告ありがとうw

>>223
>>222のであってる。
>>206のBallっていうの見てインスタンスと勘違いしてたっす、ごめん。

ようやく理解した?なので書いてみると、簡単な衝突判定だけならか>>218の人みたいに衝突用のクラスを生成するときに引数で配列とかオブジェクトを渡すっ感じが好き。
なんかスレ汚しになってごめん。
227 :Now_loading...774KB2010/12/02(木) 20:05:33 ID:H2VBNs8U
質問をさせてください。

入れ子の関係にあるクラスの間で、
子オブジェクトがremoveChildされたあと、
親オブジェクトがそれを関知して自身をremoveChildするような
方法はありますか?

具体的には

親クラスで、
子クラス内の「タイマーイベントを使ったエフェクト→removeChild(子)」
をするメソッドを呼び出す。



子クラスでremoveChild(子)が完了したときに
親クラスでremoveChild(親)を実行する。

という流れを作りたいです。



いまのところ、親クラスでタイマーを用いて
removeChild(子)されたかを定期的に検知して、
されているならremoveChild(親)を実行する
というものしか思い浮かびませんが、
もっと上手い方法がある気がしてなりません。

よろしくお願いします。
228 :Now_loading...774KB2010/12/02(木) 20:09:53 ID:LKHznHKS
DisplayObejctだったら、Event.REMOVEDつかったら?
229 :Now_loading...774KB2010/12/02(木) 20:12:19 ID:LKHznHKS
自作クラスでも、自分でdispatchすればいいか。
230 :Now_loading...774KB2010/12/02(木) 21:31:00 ID:qkF4i2hY
子のリムーブと親のリムーブ書いた適当な関数作って、
子のリムーブのタイミングで代わりにその関数呼ぶんじゃだめなの?
231 :Now_loading...774KB2010/12/04(土) 10:19:47 ID:y7tpVgoW
質問させて下さい。

外部SWFでリンケージしたBGMを親のswfから鳴らしたいのですが上手くいきません。

//testに外部swfを読込んでフレームを移動させる所まではできたのですが・
test.content.gotoAndStop(2);

//外部swfの音楽を鳴らすには、どう記述したら良いのでしょうか。
var sound_obj : Sound = new test.content.bgm01( );
// サウンドを再生
sound_obj.play();

何卒よろしくお願い致します。
232 :Now_loading...774KB2010/12/04(土) 13:10:04 ID:FfkRSRzw
>>231
AS3.0?
親子間のクラス参照は、ちょっとだけめんどいよ
LoaderInfo.applicationDomain.getDefinitionか
LoaderContex使う
233 :2312010/12/04(土) 15:14:40 ID:66ngvSVr
>> ID:FfkRSRzw
お忙しい所、返信ありがとうございます。
使用しているのはas3.0です。
キーワードをgoogleらせて頂きました、申し訳ありません。
googleったサイトは、まだ私では理解ができませんでした。
今後も調べさえて頂きます、

も、もしですが、お手間を取らせて申し訳ございませんが、
簡単な記述例をご存知でしたら教えて頂ける様でしたら幸いです。
平にひらに、お願い致します。
234 :2272010/12/04(土) 17:29:08 ID:mNWAnfae
>>228
>>229
>>230

アドバイスありがとうございます!
無事、解決しました!

Event.REMOVEを使う方法でいけました。
236 :Now_loading...774KB2010/12/06(月) 16:36:00 ID:vmXdei4p
actionscript2.0(flash lite)でダイナミックテキストをmarqueeのように右から左へ流したいのですが、
ダイナミックテキストのx位置がとれずに困っております。

ダイナミックテキスト自体、xyの値を保持していないのでしょうか?
方法等をご指導いただけると助かります。

↓は取得したい値です
http://www1.axfc.net/uploader/Sc/so/180797
237 :Now_loading...774KB2010/12/06(月) 23:47:23 ID:gqEY650b
どういうことか今一分からないけど、テキストでxy取得できないなら適当なスプライト作ってaddchildするとか、
テキストを更にムービークリップのシンボルにでもしてみればいいんじゃないのかな
238 :Now_loading...774KB2010/12/07(火) 11:04:11 ID:/OKQcKxE
>>237
レスありがとうございます。
ダイナミックテキストの部分はPHPプログラム側から表示文字を変える形になります。
「右から左」はモーショントゥイーンもできますが、できればactionscriptにて実装しようと思っておりました。

for (i=0;i+mbstrlen(moji)>500;i++) {
moji._x +=i;
}

シンボルにするとダイナミックテキストの文字が変数にて指定できないようでした。
わかりにくいかと思いますが、よろしくお願いいたします。
※flaファイルをアップしても問題ないでしょうか?
239 :Now_loading...774KB2010/12/07(火) 14:44:32 ID:whHvL3CP
>>238
ダイナミックテイストフィールドに、インスタンス名じゃなくて変数入れてるの?
だとしたら、まずそれをやめる
テキストフィールドの位置は、Textfield._x、_yでとれる
スクロールは、Textfield.scrollや、hscrollを使える
文字に直接アクセスしたいなら、Textfield.textで
それから、forループでのアニメーションは無理だから、onEnterFrameとか
setIntervalあたりを使う
ヘルプかAS2.0のリファレンス本やサイト等で、まずはTextfieldについての基本を確認するべき
240 :Now_loading...774KB2010/12/07(火) 15:44:28 ID:/OKQcKxE
>>239
レスありがとうございます。
後出しで申し訳ないのですが、flash liteの1.1なのでonEnterFrameやsetIntervalは使用できないようです。

自分でいろいろ試して、ある程度できるようになりました。

ダイレクトテキスト(変数moji)をシンボル化→シンボル名を指定(シンボル名simbol)

simbol.moji = "TEST";

これでひとまずは問題解決できました。

241 :Now_loading...774KB2010/12/07(火) 16:08:07 ID:whHvL3CP
>>240
>flash liteの1.1なのでonEnterFrameやsetIntervalは使用できないようです。

それはすまんかった
しかしflash lite1.1って、Flash4ベースで、AS2.0ですらないぞ
2.0よりもはるかに制限が多いので、ごっちゃにしちゃいかん
とりあえず解決オメ
242 :Now_loading...774KB2010/12/07(火) 19:08:49 ID:/OKQcKxE
>>241
いえいえ、ありがとうございます。

携帯用とはいえ本当に制約多すぎで…
AS2.0だったらはるかに楽なんですが
243 :Now_loading...774KB2010/12/07(火) 21:12:33 ID:b0z4UJis
FlashCS5でTLFテキストを使用したFlaファイルからパブリッシュした
SWFファイルを他のSWFがLoaderを使って読み込むと「Test」のような型が「Test@306eb8b1」のようになってしまいます
これをどうにか、もとの型に戻したいのですがどうすればいいでしょうか?

ちなみにObject型に変換したらメソッドにアクセスすることはできましたが
コード保管されないので気持ち悪いです。

よろしくお願い致します。
244 :Now_loading...774KB2010/12/07(火) 21:15:01 ID:/o04BoZk
Objectじゃなくて元の型にキャストしたらいいんじゃないの?
245 :Now_loading...774KB2010/12/07(火) 21:31:29 ID:b0z4UJis
TLFテキストを使用したSWFはLoaderで読むと何故か型がおかしくなり、
無理やりキャストするとTest@306eb8b1をTestに変換できないといわれちゃうんです(汗
246 :Now_loading...774KB2010/12/07(火) 21:48:53 ID:/o04BoZk
あーなるほど。
Test型をswcで書き出した後に
それをそれぞれで使ってやる形にするんだったっけか。
間違ってるかもしれんけど。
249 :あっちゃん2010/12/08(水) 00:33:24 ID:SqHjkwVv
突然で申し訳ないのですが、Flash について詳しく書かれていましたので書き込みさせて
頂きました。

個人でグラフィックデザインをしてますので他に聞ける技術者
がおらず途方にくれ書き込みさせて頂いております。

この度お聞きしたいのはフラッシュ環境においてのフォントを
表示するときの事です。

フラッシュ内でフォントのアウトラインをとると線がぼやけて
しまうので、デバイスフォントを利用するを選び綺麗にパブリ
ッシュすることが出来るのですが、この方法ですと自分のパソ
コン内でしか綺麗には映らず他のパソコンでは他のフォントに
マッピングされてしまいます。

サーバーにフォントを一緒にアップロードすることによってフ
ラッシュ(swfデータ)がそのフォントデータを読みこんで表
示をするような事は可能でしょうか?Action scriptでフォン
トデータを読み込んだり出来ませんでしょうか?

お手数をおかけして申し訳ありませんが、教えて頂けると非常
に助かります。

宜しくお願いします
250 :Now_loading...774KB2010/12/08(水) 00:54:12 ID:QQNxjbMk
>>249
できるけど、フォントによってはラインセンス上、そういう行為がダメだったり
高価だったりするよ
その点は、大丈夫?

そもそもフォントのレンダリングにもいろいろあるけど、そのへんは試してみての感想?
embedなら、満足のいく結果といえるの?
251 :あっちゃん2010/12/08(水) 01:12:35 ID:SqHjkwVv
フォントはもう買いとったものなのでオッケーです。
フラッシュでのアウトラインはもう試しました。
イラストレータから取り入れたり、フォトショップから取り入れるのはいいのですが、もうすでにアニメーションさせているので無理です。
もうムービーデータはほぼ出来ているので、
できればデバイスフォントのままサーバーに一緒に送ってサーバー上のフォントデータとリンクできたら最高です
252 :あっちゃん2010/12/08(水) 01:18:55 ID:SqHjkwVv
実はこのフラッシュファイルがほぼ完成してから、デバイスフォントが他のpcで映らない事に気がついたのでかなりショックでした。

253 :Now_loading...774KB2010/12/08(水) 01:32:09 ID:QQNxjbMk
>>252
なにか勘違いしていないか?
デバイスフォントって、それぞれの実行環境にあるフォントを使うってことで
そういう名前のフォントがあるわけじゃないぞ?
あと、アウトラインとembedは、違う意味で使ってるんだが、もしかして
同じ意味で使ってる?
共有ライブラリでフォントを使うことはできるが、要は埋め込み(embed)と同じだよ?
アウトライン以前に、フォントを埋め込んで、レンダリング品質を変えて試してみたのか?
254 :Now_loading...774KB2010/12/08(水) 18:12:24 ID:XsgrymiB
AS2にあって、AS3で廃止された機能を使いたいのでAS2で書いてswfにしようと考えています。
2点ほど質問があるのですが、
AS2で書いても現在のプレイヤーで動くのでしょうか?
AS2で書いたものをswfにするのにはどのような方法が今使えるでしょうか?

よろしくお願いします。
255 :Now_loading...774KB2010/12/08(水) 18:16:13 ID:wKwFIweR
>>254
1>動く
2>意味がよくわからんのだが
それこそFlashCS5とか使えばいいだけでは?

でも、そもそもAS2でできて、3でできないことって何?
逆ならわかるが
256 :Now_loading...774KB2010/12/08(水) 18:39:04 ID:5Xo8AIn1
>>254-255
duplicateMovieClipかな?
AS3からAS2コンテンツにアクセスする「ForcibleLoader」というライブラリはある。
ttp://www.libspark.org/wiki/yossy/ForcibleLoader
参考書「ActionScript3.0ライブラリ入門」(新藤 愛大 ほか)翔泳社
257 :Now_loading...774KB2010/12/09(木) 01:04:09 ID:bxuo0qNa
基本的な質問ですみません。

親swfから子swfを読み込んでいるケースで
子swfから親swfの関数やインスタンスを参照する場合

_parentRoot=root.parent.parent;

等とした上で

_parentRoot.関数名();
_parentRoot.インスタンス名

と記述することで参照することは理解できたのですが、
その記述をしたうえで子swf単体でパブリッシュをすると
(親swfをパブリッシュした場合は、それで問題なく動作するのですが)
以下のようなエラーが出てしまいます。

TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。
at com::hoge()

制作時は子swf単体でテストをしたいので、
それをなんとか回避したいのですが、方法がわからず困っています。

どなたかご教授いただけますと助かります。

よろしくお願いいたします。
258 :Now_loading...774KB2010/12/09(木) 10:04:29 ID:ujEDkVq+
>>257
単体で動作した場合、当たり前だけど親が取得できなくなるから
_parentRootにはnullが代入される。

なので_parentRootを使っている場所にnullだった場合は処理しないようにすればいいとおもう。

if( _parentRoot ) _parentRoot.testFunc();
259 :Now_loading...774KB2010/12/09(木) 10:15:22 ID:ujEDkVq+
as3で配列の要素をインデックスを指定して捨てたいのですが
以下のような関数を定義する方法以外にもっといい方法ありますか?

private function nukidashi(ary:Array, i:uint):Array
{
return ary.slice(0,i).concat(ary.slice(i+1) );
}

var ary:Array = [ 0, 1, 2, 3, 4, 5 ];
ary = nukidashi(ary, 3);
trace( ary ); // 結果:0,1,2,4,5

インデックスを指定でき、popやunshiftのように元の配列を書き換えれるメソッドが
Arrayクラスにあればいいのですが
ざっとリファレンスを見た感じだとありませんでした(汗

これでできるのでこれでいいかなぁとも思っていますが
もっと良いやり方がありましたらご教授よろしくお願いします。
260 :Now_loading...774KB2010/12/09(木) 10:25:36 ID:COe0pfKa
>>249と>>257はマルチポスト
たてつづけにマルチってどうなってるのよ?w
261 :Now_loading...774KB2010/12/09(木) 12:43:18 ID:ujEDkVq+
Eventクラスを継承したカスタムイベント、たとえばEnemyEventを作った場合に
Eventクラスのプロパティであるtargetにお好みのオブジェクトを代入したいことってあるとおもうんだけど
targetプロパティが読み取り専用だからtargetに好きなオブジェクトを代入できませんでした(汗
ちょっと無理やりでEnemyEventクラス側でtargetプロパティをgetメソッドでオーバーライドしたら
EventDispacher内部で型変換ができないっていう謎のエラーが出るようになった…

AS3では自分で作ったEnemyEventのようなカスタムイベントのtargetプロパティは必ずnullになるのが常識ですか?

それと、個人的には作ったクラスに使わないプロパティやメソッドがあるのは気持ち悪くて
それを極力無くしたりしているのですが(継承でなくコンポジションを使うなど)
EnemyEventは、Eventクラスを継承しているので
COMPLETE等の余計な定数も一緒についてきちゃうわけですが
みなさんはそこら辺についてどういう考えをもっているのか興味深いです。

「EnemyEventのCOMPLETEって何が起きたときに呼ばれるの?」ってきかれたら
「ああ、それは呼ばれることはないです…。」って答えるのはなんかスマートじゃないなぁと思うんです。
262 :Now_loading...774KB2010/12/09(木) 13:49:29 ID:IMRHCzrp
targetってEventをDisptchしたものが入るもんだろ。
EventDispatcherを使えばちゃんと入るとおもうが。
263 :Now_loading...774KB2010/12/09(木) 14:08:50 ID:hBnOJteP
XMLから取得した値を日付に変換して日護計算したいです。

<parent day="2011,01,01" >
 <child>Item</child>
 <child>Item</child>
</parent>

こういうXMLがあり、「Item」を見つけたら親の「day」を見て、
賞味期限=2011年01月01日と出力、
10日足して
消費期限=2011年01月11日という結果を出力したいのですが、

var n = XMLから取得したdayの値;
var d = new Date(n);

で日付変換して任意の日数をプラスしようとしたところ、
Dateの引数にはString型のデータを入れられないという旨のエラーが出て処理できません。

var d = new Date(2011,01,01);
となるようなイメージだったのですが、どなたかご教示くださいませ。

環境はCS5 のAS3で、XMLの仕様は変更できません。
264 :Now_loading...774KB2010/12/09(木) 14:11:42 ID:piU214b2
>>263
そのエラーの通りじゃん
nがStringだから、数値にしてよって言われてるだけ
265 :Now_loading...774KB2010/12/09(木) 14:23:34 ID:hBnOJteP
>>264
ありがとうございます。

var n:Namber = XMLから取得したdayの値;

とかにすると、変換できない旨のエラーが出ます。
266 :Now_loading...774KB2010/12/09(木) 14:54:03 ID:piU214b2
>>265
それ手抜きしすぎw

もし2011,01,01という値を渡したいなら、2011,01,01という塊ではなく
2011という数値(年)、01(月)という数値、01(日)という数値を
それぞれ用意する必要がある
つまり、"2011,01,01"という文字列を、3つの数値に分割するってこと
String.split()使うとか
あるいは、文字列で有効な形("月/年/月"、この場合"01/01/2011")にするって手もある

まずは数値、文字列、配列あたりのメソッドをいろいろ試して、何がどういう働きをするか、
確認してみるのがいいと思う
int(),uint(),Number(),parseInt(),parseFloat()あたりに、文字列つっこんで
どうなるかとか試してみるとか
267 :Now_loading...774KB2010/12/09(木) 15:20:19 ID:hBnOJteP
>>266
>文字列で有効な形

神ッ!!!!

スラッシュ区切りで2011/01/01と入れたら無視されたのでスラッシュ区切りは無理なんだと思っていました。
順序が逆だったんですね。

最高です、ありがとうございました!!
268 :257 2010/12/09(木) 20:21:35 ID:bxuo0qNa
>>258、260

返信おくれてしまい申し訳ありません!

2つの板に書くのっていいことじゃなかったんですね…。
2ちゃんねるに書き込むのも
ほぼほぼ初めてで見よう見まねで投稿していたので
よく知らず、大変失礼しました。以後気を付けます。

ご指摘の通り、切り分けを行ってみたところ、
うまくいき、紆余曲折ありましたが、動作するようになりました!

ありがとうございました。
269 :Now_loading...774KB2010/12/09(木) 22:43:59 ID:+3HzEd6W
>>257
MovieClip(stage.getChildAt(0))._hoge、なんかも便利じゃないかな。
>>257
MovieClip(stage.getChildAt(0))で、プレイヤー上で一番上のswdを指定出来るから、
親にも子にも同じ名前の関数や変数作っといて、別の事かいておけば、
自分のSWFを起動した場合は自分のを、子になった場合は親のを読みに行くんで色々切り替えられる。
271 :Now_loading...774KB2010/12/09(木) 23:26:48 ID:YJgHySr5
AS3(Player10),FlashCS4,WinXP
長いパスを持つ(深い場所にある)MCのRootから見た時の参照方法で質問です。

例えば、addChildで繰り返し追加した結果、root.mc0.mc1.mc2.mc3.mc4.mcA という
パス(文字列)になった時、この文字列を使って参照したく思います。

安易な方法としては、getChildByName()を多用し、
getChildByName("mc0").getChildByName("mc1")getChildByName("mc2")・・・ 
とすれば良いかも知れませんが、これだと冗長なのでもっとスマートな方法を探して
います。
(ググ"ったり、本で調べましたが分かりませんでした)
宜しくお願い致します。
272 :Now_loading...774KB2010/12/10(金) 00:29:54 ID:a/GpO+MV
そういうのまとめた関数一個作っといてその関数読みに行くだけってのはやっぱ求めてるスマートは違うかな
275 :Now_loading...774KB2010/12/10(金) 04:23:54 ID:sFE5uT0X
(色相の)HSV値をRGB値に変換する記述で質問です。
使用環境は、FlashCS4,ActionScript 3.0,XPです。

実験としてあるRGB値を適当に選び、RGB→HSV→RGBの復元を行い、元のRGB値との
差異を見ました。
最初、ttp://kawa.at.webry.info/200905/article_11.htmlを参考にしていたのですがRGBに
戻したときの値がどうしても全く一致しなかったので
ttp://yokohara.blog50.fc2.com/blog-entry-7.htmlを試しました。

後者は近い値が出ましたが、それでも元のRGB値と開きがあります。
そこで質問ですが、皆さんのお薦めの変換コードはありますか?(すいません、出来れば
上の2つの検証を願います)

あと、frocessingのfrocessing.color.FColorに HSVtoRGB(h, s, v) というのがありますが、
(試した範囲で)frocessing.display.F5MovieClip2Dを継承したクラス内での使用が不可だった
ので保留しています。
276 :Now_loading...774KB2010/12/10(金) 06:57:27 ID:frmzyASl
>>272-274
さんくすです。
なるほど。専用の関数で対処します。
277 :Now_loading...774KB2010/12/10(金) 10:49:27 ID:tSRTG3Ao
>>275
計算でやっている以上無理。
元の値を保持するクラスを作るのがお勧め。
278 :Now_loading...774KB2010/12/10(金) 20:25:18 ID:axeWLHWN
環境:Flash MX(AS1) / Windows XP SP3

http://www.kirupa.com/developer/mx/snow.htm
http://www.kirupa.com/developer/mx/snow2.htm
このページの雪が降っているFlashを、逆方向(上昇)に動くよう修正したいです。

始めたばかりで関数の意味もよく分からないままで恥ずかしいのですが、
何箇所か+-や数字を入れ替えたりだけはしてみましたが、希望する動きを実現できませんでした。

(↓の部分などの+-を入れ替えると上昇するのですがループしない)
> i = 1+Math.random()*2
> . this._y += i

ヒントだけでも教えていただけるとありがたいです・・・
279 :Now_loading...774KB 2010/12/10(金) 23:08:41 ID:PsX3ku2Q
>278

パッと見ただけで恐縮ですが、
↓ここらへんで初期値を設定しているので、
if (this._y>=movieHeight) {
this._y = -5;
}
こういう風にしてみてはいかがでしょうか?
if (this._y<=0) {
this._y = movieHeight+5;
}
検証はしていませんが、おそらく上下が入れ替わったことで
行きすぎたクリップを戻す処理の内容も変更する必要があるかと
思います。
280 :2752010/12/11(土) 00:43:51 ID:h1Cy0rub
自己レスです。

すいません、最初の(A)ttp://kawa.at.webry.info/200905/article_11.htmlを再検証したところ、
大体正しい値が出ました。
とは言っても元のRGB値とは開きがあり(特に青色[B])、後者の
(B)ttp://yokohara.blog50.fc2.com/blog-entry-7.htmlよりは元の値に近い程度です。
※比較上の問題です。

結論として、(A)さんのコードで進めます。

(A)の作者さん間違った使い方をしてごめんなさい。
281 :Now_loading...774KB2010/12/11(土) 01:49:23 ID:NEFmoauj
>>278
AS見てないけど、雪降らしてるMCを逆向きに配置すればいいのではないか
282 :2782010/12/11(土) 10:52:18 ID:uZux/2Xv
>>279
>>281
レスありがとうございました。

279さんの
if (this._y<=0) {
this._y = movieHeight+5;
}
に加えて、

i=-1-Math.random()*2
に修正したら、希望の動きを実現できました。ありがとうございました。これからもっと勉強したいと思います。
283 :Now_loading...774KB2010/12/11(土) 12:13:42 ID:OOMeUXO0
mtasc -header 800:600:25 -main -swf default_mtasc.swf -cp ~/worksp/test/src src/com/test/test.as
このようにコンパイルしようとすると、

Directory 'std' containing MTASC class headers cannot be found :
Please install it or set classpath using '-cp' so it can be found.
のようなエラーで失敗してしまいます。
正しくはどのように書けばいいのでしょうか?
284 :Now_loading...774KB2010/12/11(土) 17:56:09 ID:OOMeUXO0
>>283
自己解決しました
285 :Now_loading...774KB2010/12/11(土) 19:39:24 ID:8ZnxvdiP
ExternalInterfaceを使わずに、javascript側からasの関数を呼ぶことはできますか?
htmlにはobjectとembedで貼付けしています。
286 :Now_loading...774KB2010/12/11(土) 20:38:52 ID:EtqylbXZ
使用環境を書こうよ
287 :Now_loading...774KB2010/12/11(土) 20:46:02 ID:8ZnxvdiP
>>286
すいません。AS2を検討しています。
288 :Now_loading...774KB2010/12/11(土) 23:16:22 ID:7kR4FmVr
AS3(Player10),WinXPです。
下のような中空の図形の描画するにはどうすれば良いでしょうか? 
http://uproda11.2ch-library.com/277227tDX/11277227.png

オレンジ色の部分はパスで、パスを繋いでできた2つの環状図形の間に
緑色を流し込むような感じです。
※CS4などのバケツツールで流し込む感じです。

本などを読むと、ドーナナッツ図形を形成するのにビットマップで塗りつぶす
方法が紹介されていいますが、これだと塗りつぶし用の図形を別に持って
いなければならないためこの方法は避けたいです。

frocessingはで塗ることも考えましたが、ライブラリーを用いないで塗る
方法を探しています。
290 :Now_loading...774KB2010/12/12(日) 11:55:10 ID:MwovirsQ
>>288
何も難しいことないんじゃ?
パス描いて塗りつぶし。
塗りつぶしはGraphics.floodFill()
パスもGraphicsの中にあったはず
291 :2882010/12/12(日) 14:45:14 ID:6zWKbxgs
>>290
floodFill() について調べましたが、これは BitmapData.floodFill で、
確かにバケツツールのような塗りができます。
しかし、特定の点を通る曲線パス(連続曲線・スプライン曲線)を drawPath()
でやろうとしましたが、やり方が分かりません。

再度アドバイス願います。
292 :Now_loading...774KB2010/12/12(日) 14:59:49 ID:MwovirsQ
>>291
flexのリファレンスGraphicsページ良く読め
293 :2882010/12/12(日) 15:52:02 ID:6zWKbxgs
>>292
すいません、FlashCS4です。
294 :Now_loading...774KB2010/12/12(日) 16:11:52 ID:MwovirsQ
flashもflexもGraphicsは同じ。
curveToじゃだめなの?

ベジェじゃだめなら、スプライン曲線の描画関数はなさそうだから、自作するしかない。
295 :Now_loading...774KB2010/12/12(日) 21:07:40 ID:F02GT1D3
はじめまして。

TwitterのAPIからデータを取得したらイベントを発生させたいと
思っています。

AS3の自作Twitterクラスのコンストラクタで、
addEventListener("twit", onTwitterComplete);
としています。

Mainクラスから毎フレーム
dispatchEvent(new Event('twit'));
しているのですが、onTwitterCompleteが呼ばれません。。。

Mainクラスではtwitイベントを検知できるのですが、
Twitterクラスでは検知できません。

どうすればよいのでしょうか?
296 :Now_loading...774KB2010/12/12(日) 21:18:48 ID:F02GT1D3
295です。
自分のクラス内でdispatchしたら
listenできるみたいです。

他のクラスにイベントを送信するにはどうすればよいのでしょう。。?
297 :Now_loading...774KB2010/12/12(日) 21:25:58 ID:F02GT1D3
やりたいことはこれです。
http://flashjp.com/as3/myevent.php
別クラスのイベントを取得するメジャーな方法は何でしょうか?
298 :288&2912010/12/12(日) 22:13:56 ID:1rJ85zSU
>>294
curveToだと特定の座標を頂点とする曲線を描画するのにコントロールポイントの位置を計算
しないといけないので避けています。
299 :Now_loading...774KB2010/12/12(日) 23:09:44 ID:F02GT1D3
295です。
自己解決しました。
発信側のクラスでlistenしつつ、
登録する関数は他クラスにすればできました。
300 :Now_loading...774KB2010/12/13(月) 01:53:28 ID:KZ8jiryq
>>298
計算式なんてググれば見つかるんだから自作すれば?
301 :Now_loading...774KB2010/12/13(月) 02:28:06 ID:ggiphfWJ
準備されてなければできないんだったら、できないよね。なにも。
302 :Now_loading...774KB2010/12/13(月) 20:16:04 ID:lNJU+C/P
AS3です。

テキストボックスの文字についてです。
テキストボックス内で、文字上に詰まりすぎいるため下に調整したいです。

(1)テキストボックス内で、文字の表示する縦方向の位置を調整する仕組み
(2)leftMargin、rightMarginのように、縦方向の余白を調整する仕組み

のいずれかはあるでしょうか?
よろしくお願いします。
303 :Now_loading...774KB2010/12/14(火) 03:22:01 ID:WRZAUxnY
WinXP-ProでFlashProCS4,AS3,Player10
入れ子のMCからStageのプロパティを参照するにはどうしたら良いでしょうか?
今やっているのは、Stage(root)にMC0をaddChildして、更にこの中にMC1をaddChild
して、ここから stage.quality = StageQuality.MEDIUM; や stageW = stage.stageWidth;
などとして参照&代入したく思っています。

ところが、ムービーのデバッグでは stage.quality = StageQuality.MEDIUM; の行
でエラーとななります。
304 :Now_loading...774KB2010/12/14(火) 20:56:55 ID:MlLvoTwX
Flash超初心者です

Flash CS5体験版を使っておりタイピングゲームを作ろうと
まず基礎からやっているのですが

ttp://homepage3.nifty.com/j_town/flashtype/1-1.html
このサイトどおりやっても文字が変わらないのです

どうしたらいいのでしょうか?よろしくお願いします
305 :Now_loading...774KB2010/12/14(火) 21:20:02 ID:yMKF6q3g
>>304
そのページAS1.0あたりの解説だから、今から参考にするにはあまり適さない
そして、Flashドキュメントの設定でAS3.0になっていると、AS2.0以前の記述では
エラーになったりする

>どうしたらいい
AS3.0の基本を解説をしているサイトを参考にする
こことか↓
ttp://hakuhin.jp/as3.html
306 :Now_loading...774KB2010/12/14(火) 22:30:34 ID:MlLvoTwX
>>305
丁寧な回答ありがとうございます
そのサイトを見て勉強しようとおもいます!
307 :Now_loading...774KB2010/12/14(火) 23:09:58 ID:SvfVtcrU
AS3 で質問です。
EventDispatcher.hasEventListener(eventType) でイベントリスナーの有無を調べることができますが、特定のリスナーの登録を調べる方法はありますか?
例えば以下のコードで
_sprite.addEventListener(Event.ENTER_FRAME, _loop1);
if (_flag == true) _sprite.addEventListener(Event.ENTER_FRAME, _loop2);
_sprite.hasEventListener(Event.ENTER_FRAME); // true
変数 _flag を参照せずに _sprite に _loop2 がリスナーとして登録されたか調べるにはどうしたらいいでしょうか。
308 :Now_loading...774KB2010/12/14(火) 23:23:06 ID:cZazDILt
なんか、ちぐはぐな質問だと思うんだが。

>_sprite.hasEventListener(Event.ENTER_FRAME);
には、_flagは関係ないけど。
310 :Now_loading...774KB2010/12/14(火) 23:46:14 ID:SvfVtcrU
>> 308
>> 307は、
_flag が true の場合に _loop2 をエンターフレームリスナーとして登録、
_loop2 が登録されたか _flag を参照せずに調べたいが、
_sprite.hasEventListener(Event.ENTER_FRAME);
では _loop1 が登録されているので true を返す
それなら _sprite に _loop2 が登録されているか調べるには?
という例にしたかったんですけどおかしいですか?
311 :Now_loading...774KB2010/12/14(火) 23:55:59 ID:cZazDILt
やっと意味がわかった。
_loop1と_loop2があることが認識できなかった。
最初の2行だけで十分。逆に混乱した。

結論から言うと無い。

とはいえ、登録されているかどうかわからない関数は
いったんremoveしてから再度登録すれば良いだけで
この方法で問題がある場合が思いつかない。
312 :Now_loading...774KB2010/12/15(水) 00:01:00 ID:jIXn/Sc2
あ、無いことは無い。けど、flag管理する手間と同じような気がする。
313 :Now_loading...774KB2010/12/15(水) 00:10:37 ID:DWxVF8Rn
>>311
やはりありませんか。
方法としてはとりあえずremoveしちゃうかフラグ管理するかってことですね。
それらの方法で実装を進めることにします。
ありがとうございました。
314 :Now_loading...774KB2010/12/15(水) 06:12:47 ID:kmIAAnjx
wonderflの作品をFlashCS4に適用した際の質問です。
ttp://wonderfl.net/c/hWk9 の背景を白からステージの色にしようと
[SWF(width = "465", ・・・, backgroundColor = "#ffffff")] の行を外したところ
白のままでした。

どうしたら良いでしょうか?
315 :3142010/12/15(水) 21:51:00 ID:Qyimsn8M
(自己レス)
解決しました。var buffer:BitmapData = new BitmapData(・・・)の BitmapDataの第3引数
をtrueにして、第4引数で透明度が0になるよう0x00ffffffなどとすればOKでした。
316 :Now_loading...774KB2010/12/16(木) 16:21:13 ID:+aa+fzut
AS2で質問です

変数の名前を変数で指定する方法はありますでしょうか
例えば

hoge='abcd';
root.変数名 = 777

trace(_root.変数名);
結果777
317 :Now_loading...774KB2010/12/16(木) 16:22:24 ID:R5uARbPT
>>316
配列アクセス演算子
319 :Now_loading...774KB2010/12/16(木) 16:29:44 ID:+aa+fzut
>>317 ありがとうございます
320 :Now_loading...774KB2010/12/16(木) 19:02:06 ID:dqBOiv/T
<data1 name="hoge" time="1234567890" />
<data2 name="hoge" time="1234567890" />
このような形式のXMLがあるときに、data1,data2のどちらであるのかを取得したいです。
どのような感じで取り出せるのでしょうか?
321 :Now_loading...774KB2010/12/16(木) 19:56:01 ID:FAs+UElR
ほんとうにそんな形式なの?DTDかスキーマ無いの?
<data type="data1" name="hoge" time="1234567890" />
<data type="data2" name="hoge" time="1234567890" />
とかの間違いじゃなくて?

322 :Now_loading...774KB2010/12/16(木) 23:14:59 ID:UQvXh+d7
Actionscript3.0 CS4についてです。

クリック音をつけたところ、音が微妙に遅れて聞こえます。
音声の頭はぎりぎりまで削りました。10KBくらいです。
MP3はse_clickで書き出ししています。

//クリック音生成
var click_snd:Sound = new Sound();
click_snd = new se_click();

//ムービークリップクリックで再生
mc.addEventListener( MouseEvent.CLICK, fn);
function fn(event:MouseEvent):void{
click_snd.play();
}
323 :Now_loading...774KB2010/12/16(木) 23:34:54 ID:MAIq0g5U
>>322
CLICK じゃなくて MouseEvent.MOUSE_DOWN はダメ?
324 :Now_loading...774KB2010/12/16(木) 23:45:42 ID:UQvXh+d7
>>323
両方書いて比べたところきちんと差が出て聞こえました。
MouseDownでいきたいと思います!ありがとうございます。
325 :Now_loading...774KB2010/12/17(金) 17:21:39 ID:+aDUJ6pr
while ループ中に

ダイナミックテキストにループ回数を表示したいのですが
どうすればいいでしょうか

while{
_root.counter++;
処理
}
だとダイナミックテキストに反映されませんでした
326 :Now_loading...774KB2010/12/17(金) 17:39:38 ID:rjVa84hu
関数が終わらないと表示更新がされない仕様なので、
whileループではなく、Timerを使う。
327 :Now_loading...774KB2010/12/17(金) 17:39:54 ID:JaoLYhQL
>>325
ループが終わるまで描画更新されないから、「ループ中に」というのは無理
繰り返しを描画に反映させる場合は、ループ使わずEvent.ENTER_FRAMとかだけど
その記述はAS1.0あたりじゃないですか?
ASのバージョンも書かないと、適切な回答つかないすよ
328 :Now_loading...774KB2010/12/17(金) 18:08:47 ID:+aDUJ6pr
ありがとうございました。
最近はじめたのでちんぷんかんぷんですみません
329 :Now_loading...774KB2010/12/17(金) 21:44:17 ID:h9cLccW2
・actionscript3
・cs4
http://sky.geocities.jp/lizchan_kiteyo/index.html
・上記のアニメーションを作りました。
・現在は全てのボタンをクリックすると、画面上に3つのアニメーションが残るのですが、
やりたい事は、最後に押したボタンのアニメーションだけを残るようにしたいです。
・例えば最初に「start01ボタン」を押した時、「start01ボタンで動いたアニメーション」が
動きます。次に「start03ボタン」を押したときに「start01ボタンで動いたアニメーション」
が最初のフレームに戻し、「start03ボタンで動いたアニメーション」だけにしたいと思っています。
・本当に初心者で、用語やコードを張る位置も分からないので、コードの張る位置なども教えてほしいです。

mc01.stop();
this.mc02.stop();
this.mc03.stop();
this.start01.addEventListener(MouseEvent.CLICK, onClickStart1);
this.start02.addEventListener(MouseEvent.CLICK, onClickStart2);
this.start03.addEventListener(MouseEvent.CLICK, onClickStart3);
function onClickStart1(event:MouseEvent):void
{
this.mc01.play();
}
function onClickStart2(event:MouseEvent):void
{
this.mc02.play();
}
function onClickStart3(event:MouseEvent):void
{
this.mc03.play();


分かる人よろしくお願いします。
330 :Now_loading...774KB2010/12/17(金) 22:08:53 ID:/O6PfZuS
なんか面白いのが出てる

3Dベクター表示とオフライン動作に対応したAndroid版「Google Maps 5.0」
ttp://journal.mycom.co.jp/articles/2010/12/17/google_maps/

これのFlash用APIでないかなあ・・・
331 :Now_loading...774KB2010/12/17(金) 22:36:42 ID:puG8hwME
AS3で質問があります
Timerを使ったときに
var time = new Timer(1,0);

としているのですがなぜか3ケタ目が1秒になってしまいます
どうしたら4桁目を1秒にすることができるでしょうか?

よろしく尾根がします
332 :Now_loading...774KB2010/12/17(金) 23:03:26 ID://4eSqDe
>>325
updateAfterEvent()ってwhileん中じゃ効かないっけ。マウスムーブとかなら使えるんだけど。
333 :Now_loading...774KB2010/12/18(土) 05:23:14 ID:w9f1qVqu
>>331
質問文読み返せ
334 :Now_loading...774KB2010/12/18(土) 16:49:28 ID:zRdTu8XH
RTMFPのP2P通信でローカルでは
NetGroup.Neighbor.Connectを受け取れて通信しあうことができるのですが
ほかのPCとでは
NetGroup.Connect.Successと出るだけで通信しあうことができません。

ポートやFW関係など、別に設定しないといけないことってあるのでしょうか?
http://cc.rtmfp.net/で調べると1,4,5番目がNoとなっています。
335 :3312010/12/19(日) 02:24:27 ID:OTGlMLlC
>>333
すいません変換おかしかったです。。。

もうちょっと質問を具体的にすると
var timecount:int = 0;
var timer:Timer = new Timer(1,0);

timer.addEventListener(TimerEvent.TIMER,function(e:TimerEvent):void{
time++;
timecount_disp.text = time.toString() + "ミリ秒";
});

336 :3312010/12/19(日) 02:27:59 ID:OTGlMLlC
>>335
途中で投稿してしまいました スイマセン。。

var timecount:int = 0;
var timer:Timer = new Timer(1,0);

timer.addEventListener(TimerEvent.TIMER,function(e:TimerEvent):void{
timecount++;
byousuu.text = timecount.toString() + "ミリ秒";
});

こうしてインスタンス名byousuuという部分のテキストに
ミリ秒単位で表示させようとしてるのですが1秒で100ミリ秒となってしまいます

ちゃんと1秒で1000ミリ秒としたいのですがどうすればいいのでしょうか?
改めてお願いいたします
337 :Now_loading...774KB2010/12/19(日) 03:51:35 ID:KGmm612y
AS3.0についての質問です
TextFieldに文字列を代入して表示しているのですが、途中で文字が途切れてしまいます
フォーマットなどはいじらずに“あいうえおかきくけこ”を表示してみると

あいうえおかきくけ

というように途切れてしまいます
表示範囲を変更するにはどうすればいいでしょうか?
338 :Now_loading...774KB2010/12/19(日) 06:53:22 ID:KhZKVCl/
339 :Now_loading...774KB2010/12/19(日) 10:53:03 ID:JGcenexZ
AS3で質問です。
DisplayObjectにdrawRectなんかで書いた面を一部分抜く(消去して透明にする)にはどうしたらいいでしょうか。
よろしくお願いします。
340 :Now_loading...774KB2010/12/19(日) 14:32:04 ID:KGmm612y
>>338
width と textwidth を混同していました
ありがとうございます
341 :Now_loading...774KB2010/12/19(日) 16:45:50 ID:nBfcRgv/
>>339
blendModeで消去とかありそうな
342 :Now_loading...774KB2010/12/19(日) 19:10:23 ID:ZNuOu8Xq
as2で質問です。
リンケージしたMCにテキストをつっこんで動かそうと思うのですが
どうも重たいです
テキストをビットマップにすれば軽くなるということなので
ドロップシャドウなどのフィルタをかけたところ若干軽くなったきがしますが、やはり重いです。
他に良い方法はないでしょうか
343 :Now_loading...774KB2010/12/19(日) 19:25:47 ID:KtHHAy9T
>>342
それ、テキストがなければ軽いの?
344 :Now_loading...774KB2010/12/20(月) 05:05:26 ID:BFNJ7+at
CS4,AS3です

オブジェクトのベタ塗り色の変更はどうすれば良いでしょうか?
△ → ▲ (白の方は枠線はありません[背景は青です])
の感じです。

BitmapDataのfillColorがありますが、オーサリングで描いた図形の色を
単純に変更するだけです。
345 :Now_loading...774KB2010/12/20(月) 07:57:39 ID:9X6xSDxR
as3とjavascriptでデータの受け渡しをするにはどうしたらいいのでしょうか?

質問が曖昧すぎるのもあるとおもうので
参考サイト等でもいいのでご教授ください

よろしくお願いいたします
346 :Now_loading...774KB2010/12/20(月) 13:08:25 ID:EV7CrzJn
>>345
ググったら山の様に出ると思うのだが・・・
347 :Now_loading...774KB2010/12/20(月) 13:51:39 ID:jVG71HMh
>>344
ColorTransform
349 :Now_loading...774KB2010/12/21(火) 09:16:32 ID:RN0cpT2U
CS4のAS3
rectObjという3つの矩形Sprite(それぞれ違う幅を持つ)をステージのX軸方向に
addChildで配置しようとしています。
一旦addChild後、各々の幅を元にX位置をを決めて設置したいのですが、試しに
trace("幅= "+getChildByName(rectObj.name).width); とすると全部ゼロになります。

newした子のプロパティ取得はどうしたら良いでしょうか?
350 :Now_loading...774KB2010/12/21(火) 13:56:57 ID:V+NRS8Ra
環境:Adobe Flash CS4、ActionScript3.0使用
やりたい事:flashサイトにbgmを流し、それを一つのボタンで停止・再生を制御したいです。
例:http://www.dbl-e.com/のフッターエリアにあるsound off/onのボタンのような感じです。
現状:再生/停止の2ボタンで制御するやり方はできたのですが、一つのボタンで制御する方法がわかりません。
宜しくお願い致します。
351 :Now_loading...774KB2010/12/21(火) 15:02:40 ID:mgXfJXa6
>>349
各々を生成したら適当な配列に突っ込む。

var rectObjList:Array = new Array();
for(三回){
rectObj = new Sprite();
rectObjList.push(rectObj);
}

これでrectObjListの0〜2に入ったんでaddChild(rectObjList[1])なりrectObjList.widthなりrectObjList.graphics.〜なりお好きにどうぞ。
353 :Now_loading...774KB2010/12/21(火) 15:13:48 ID:XXRSbp4L
>>349
newで作ったら、widthとか最初から設定されてたっけ?
ちゃんとコンストラクタとかで設定してあげてないとダメだったような。
newして、addChildする前にrectObj.widthを設定して、
その後addした後に、traceして比較したらわかるんじゃないかな。

>>350
フラグで管理したら?
var isPlay:Boolean = false;
とか最初にしておいて、ボタンのハンドラに
if ( isPaly ) {
 // 音を停止するスクリプト
} else {
 // 音を再生するスクリプト
}
isPlay = !isPlay
で行けると思う。
toggleButtonでもいいけど。
354 :3502010/12/21(火) 15:35:26 ID:WXBatuso
>>353
申し訳ない...
初心者すぎてわかりません
355 :Now_loading...774KB2010/12/21(火) 15:37:49 ID:XXRSbp4L
>>354
2ボタンでやってるときの再生ボタンの処理スクリプトはどうやってるの?
356 :3502010/12/21(火) 15:58:19 ID:WXBatuso
>>355
こんな感じです。

【1フレーム目】
asレイヤー:アクションを記入
//サウンドオブジェクト
var sound_obj = new Sound(_root);
stop();
btnレイヤー:ボタン「再生」「停止」を配置

【2フレーム目】
asレイヤー:mp3データを配置
btnレイヤー:フレームのみ
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
【900フレーム目】
asレイヤー:アクションを記入
gotoAndPlay(2);
btnレイヤー:フレームのみ
357 :3502010/12/21(火) 16:05:05 ID:WXBatuso
>>355
申し訳ない
356にas書くの忘れてた..
本当は以下のような構成です。

■1フレーム目
□asレイヤー:アクションを記入
//サウンドオブジェクト
var sound_obj = new Sound(_root);
stop();
□btnレイヤー:ボタン「再生」「停止」を配置
//ボタン「再生」に入れたasは
on ( press ) {
play();
}
//ボタン「停止」に入れたasは
on ( press ) {
stop();
}

■2フレーム目
□asレイヤー:mp3データを配置
□btnレイヤー:フレームのみ

■900フレーム目
□asレイヤー:asを記入
gotoAndPlay(2);
□btnレイヤー:フレームのみ
358 :Now_loading...774KB2010/12/21(火) 16:39:30 ID:XXRSbp4L
>>356
1フレーム目に
var isPlay:Boolean = false;
追加

//ボタン「再生」を
on ( press ) {
 if ( isPaly ) {
  stop();
 } else {
  play();
 }
 isPlay = !isPlay
}
に変更したら、再生ボタンで再生停止できないかな?
359 :3502010/12/21(火) 17:07:51 ID:WXBatuso
>>358

さんくす。
追加と変更+停止ボタンの削除をしてみました。
自分のやり方が悪いと思うのだけど、
再生後「再生ボタン」を二度押すと、停止はせず飛び飛びになってしまいます...

あと今気づいたのですが、自分のこのコードはもしやAS1でしょうか?
AS3で作りたかったのですが、どなたかお知恵を...。
360 :Now_loading...774KB2010/12/21(火) 21:31:30 ID:HAbwyywF
質問です
ActionScript3のコンポーネントで
textareaに外部テキストを読み込んで表示したのですが

テキストの改行されている部分が2重改行となってtextareaに表示されてしまいます

テキストの内容
ああああああ
いいいいいい
うううううううう

textareaの表示内容
ああああああ

いいいいいい

うううううううう

どうしたら同じように表示するでしょうか?
361 :Now_loading...774KB2010/12/21(火) 21:37:45 ID:HAbwyywF
AS3のスクリプトも書いておきます。
textareaのインスタンス名はtextboxと設定してあります。

import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;

var textLoader:URLLoader = new URLLoader();
var textRequest:URLRequest = new URLRequest("aaaa.txt");

textLoader.addEventListener(Event.COMPLETE, loadEnd);
textLoader.load(textRequest);

function loadEnd(eventObject:Event):void{
var txtContents:String = eventObject.target.data;
textbox.text = textContents;
}

よろしくお願いします。
362 :Now_loading...774KB2010/12/21(火) 22:11:59 ID:XXRSbp4L
テキストファイル(=aaaa.txt)の改行コードがCRLFなんだろう。
CRにしたら良いと思うよ。
363 :3612010/12/21(火) 22:58:43 ID:HAbwyywF
>>362
改行コードをCRにしたら思い通りの表示ができました
ありがとうございます
364 :Now_loading...774KB2010/12/22(水) 04:53:07 ID:IYlJcGR5
インバースキネマティクス(IK)で質問です(当然AS3)
3D版のIKの情報をご存知の人いませんか?

「Flash Bone IK インバースキネマティクス 3d」や「ActionScript 3.0 "fl.ik.IKBone"」やらで
ググりましたが目的のサイトなどは見つかりませんでした。
(もしかして、本当に無理?)
365 :Now_loading...774KB2010/12/22(水) 06:40:22 ID:6vuFhbos
IKボーンって単なる概念(つまり数学)だから、FLASHに限定した話じゃないんじゃないの?

と、知らずに言ってみる。
FLASHに関わるのは表示部分だけだよね。
366 :Now_loading...774KB2010/12/22(水) 09:46:49 ID:odfIadMz
質問させて下さい。
ムービークリップ1(mc1)の中にある
ムービークリップ2(mc2)のマウスの反応を無効にしたいのですが。


mc1 ― ボタン1
└ mc2

mc1.mouseEnabled = false;
mc1.mc2.mouseEnabled = false;

としますと、ボタン1がメソッドにアクセス出来ませんとエラーになってしまいます。
mc2のムービークリップのマウスの反応のみ無効にしたいのですが
良い処理の仕方はあるでしょうか・・・。
367 :Now_loading...774KB2010/12/22(水) 13:39:06 ID:BUPCJv6u
上の方へレスがつく前で申し訳ないのですが、わたしも質問させてください。
ttp://www.peachjohn.co.jp/
の中央のFlash下部のように、左右にスライドするメニューを作りたいと考えています。
FlashProCS5・AS3で、現在のソースは
---
const btnWidth:int = 230 ;  //ボタンの幅
//右
arrow_r.addEventListener(MouseEvent.CLICK, rSlide);   //arrow_rは右端の矢印
function rSlide(event:Event)
{
menuBtns.x -= btnWidth; //メニューボタン1枚分ずつ移動
if(menuBtns.x<=btnWidth*-5){ menuBtns.x=0 } //ループするように見せるための位置調整
}
//左
arrow_l.addEventListener(MouseEvent.CLICK, lSlide);   //arrow_lは左端の矢印
function lSlide(event:Event)
{
menuBtns.x += bnWidth; //メニューボタン1枚分ずつ移動
if(menuBtns.x>=0){ menuBtns.x=bnWidth*-5 } //ループするように見せるための位置調整
}
---
としています。目指す場所からだいぶ遠いですが…ループだけなんとかできた、というところです。
参考サイトのほうは、バナーの幅ごとに止まりながらループするトゥイーンが適用されていて、左右の矢印ボタンにマウスオーバーしている間、そのスピードが速まります。この指示はどのように書いたらいいでしょうか。
(上でMouseEvent.MOUSE_OVERでなくMouseEvent.CLICKにしてしまっているのは、"マウスが乗っている間じゅう繰り返す"方法がわかるまでの仮の処理です(>_<))

いろいろ検索してfl.transitionsというクラスを使うのかなと感じたんですが、「クラス」というものの使い方が本を読んでも検索しても理解できず…。
できることなら、逆にソースからから仕組みを学びたいと思うのですが、よろしければどなたかサンプルソースを書いていただけないでしょうか。
もちろんそうでなくても、どんなことでもヒントをいただけたら嬉しいです。
もうここで何日もつまっています。どうぞよろしくお願いします。
368 :3492010/12/22(水) 22:54:00 ID:S6ml2AOg
>>351-353
レス有難うございます。
一応、rectObj.widthで幅を設定し、addした後にtraceしたのですがやっぱりゼロでした。
369 :Now_loading...774KB2010/12/23(木) 17:50:59 ID:d87ft8Cf
spriteは中にdrawGraphicsとかmcなんかの目に見えるオブジェクト何もないと大きさないんじゃなかったっけ。
370 :Now_loading...774KB2010/12/24(金) 17:45:40 ID:2Oo2wb4W
371 :Now_loading...774KB2010/12/24(金) 18:06:16 ID:Dfiva/X+
BetweenAS3で時間をフレーム単位にすることはできますか?
fpsが下がったときtweenの動きも一緒に遅くなるようにしたいと思っています。
代替方法でも良いので教えてください。
372 :Now_loading...774KB2010/12/24(金) 21:19:22 ID:kmgbSonv
>>371
あーそれ、俺も知りたい(便乗)
373 :Now_loading...774KB2010/12/24(金) 23:05:30 ID:AKmtdqrF
・ActionScript3
・cs4
・初心者

質問です。
下記のコードで5つ書いて、5つボタンを作成しました。
4つ目のボタン作成までは素直に動いていたのですが、
5つ目のボタンを作ってコードを書いたのですが
ボタンをクリックしても、5つ目のボタンだけランダムでしか作動しなくなりました。
たくさんのボタンを作る時は、何か他に記述しなければ動かなくなるのでしょうか?
分かる方、何か対策orコードなどを教えてください。

kaeru_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndPlayFromFrame_3);

function fl_ClickToGoToAndPlayFromFrame_3(event:MouseEvent):void {
kaeru.gotoAndPlay(2);
}
374 :Now_loading...774KB2010/12/24(金) 23:16:38 ID:AKmtdqrF
自己解決できました

ボタンは静止テキストで「・カエル」としているのですが、
なぜか「カエル」部分を押しても動かず、「・」の部分にしかクリックが反応しませんでした。

今いろいろ試しましたが・・・・理由が分かりません。><
375 :Now_loading...774KB2010/12/24(金) 23:21:32 ID:AKmtdqrF
「・」を外すと「カエル」部分にも反応するのですが、「・カエル」と入れると「・」にしか反応しない。><
なぜだろうか?入れなおしてみたりしたけど…分からない・・・
376 :Now_loading...774KB2010/12/24(金) 23:23:45 ID:AKmtdqrF
「・」を「◇」に変えてみたら・・・◇の線の部分しか反応しない…なんだこれ
377 :Now_loading...774KB2010/12/24(金) 23:41:26 ID:AKmtdqrF
何度もすみません。

今わかった事は「5つ目ボタン」だけ、先頭の文字の左部分しかクリックに反応しません。
クリックを全部の文字に反応させたいのですが、どうしてこうなったのかが分かりません。
分かる方がいれば教えてください。

一人でたくさん書きこんで、スレを汚して申し訳ございません。
378 :Now_loading...774KB2010/12/24(金) 23:50:44 ID:AKmtdqrF
自己解決できました。
静止テキストをダイナミックテキストにしてみたら、キチンと反応するようになりました。
お騒がせしてすみませんでした。
379 :3672010/12/27(月) 12:55:43 ID:Sp6shU6X
>>370

ありがとうございます!KTweenで挫折したんですが、Tweenerのほうが情報多そうですね。
開発終了したと聞いたので、そういえば触っていませんでした。
やってみます!
380 :Now_loading...774KB2010/12/28(火) 02:33:12 ID:KUAojYYb
as3 + javascriptでの質問です

function test(){
alert("テスト");
}

ExternalInterfaceを使用してJavascriptの上記functionを呼びだしたところ
その後ブラウザがフリーズしているわけではないのに操作できなく
アラートダイアログのOKボタンも押せず毎回ブラウザを強制終了するしかなくなります

環境は
Win7 Ultimate 64bit
Flash CS5
Firefox 3.6
です

よろしくお願いします
381 :3802010/12/28(火) 03:01:55 ID:KUAojYYb
追記です

document.getElementById("").innerHTML等で内容を書き換えるだけなら
そういうった現象はおこらずアラートダイアログを出した場合にのみ上記の現象が発生します
382 :Now_loading...774KB2010/12/28(火) 03:26:56 ID:7thu4y2v
全くの初心者です。
複数の画像埋め込みで着せ替えとか
ただのドラッグで画像が動くプログラムが作りたいんだけどどうしたらいいの?
調べてもjavaとかしか出てこない。。
参考になるサイトとかあったらよろしくお願いします。
383 :3802010/12/28(火) 04:58:34 ID:KUAojYYb
自己解決しました
flashのパラメータwmodeをtransparentとしてやることで正常動作するようになりました
384 :Now_loading...774KB2010/12/28(火) 16:45:03 ID:YX5aUnWZ
AS3の勉強をしています。

AS2まではattachMovie時にインスタンス名を付けられていたのですが
addChildの場合はどうやったらインスタンス名を付けることができるのでしょうか
当たり判定ができずに困っています。
385 :Now_loading...774KB2010/12/28(火) 17:19:31 ID:iIP80JaZ
AS2の事がわからんけど、たとえば、

var button1:Sprite = new Sprite();
_screen.addChild( button1 );
ってやったときに、button1がインスタンスなわけで、
button1でアクセスすれば何も問題がないんだけど、
どういうこと?
386 :Now_loading...774KB2010/12/28(火) 18:25:13 ID:v34neNhH
nameプロパティ使えばいいんじゃね?
387 :Now_loading...774KB2010/12/28(火) 18:55:39 ID:vU6sB9bC
>>384
AS2.0からの移行組だけど、インスタンス名必須な情況がわからない
AS3.0では基本的にインスタンス名を使わずに、インスタンスの参照を使うんだと
388 :Now_loading...774KB2010/12/29(水) 00:03:22 ID:NdUXaEsJ
>>385
ライブラリから複数addChildしたとき例えば弾幕とか

var mc1:mc=new mc();
addChild(mc1);

これだとmc1という名前になるので…
どうも勝手が違ってよくわからんとです

>>386
addChildしたあとに
mc1.name=mc0001とか?
それ試してみましたけどどうもうまく動かないです
if (this.hitTestObject(mc0001){}が反応しないというかエラーでパブリッシュできませぬ

>>387
ふむふむ
入門書みましたがそのへんのことが全く書いてなかったので
インスタンスの参照でググってみます


ありがとうございます
389 :Now_loading...774KB2010/12/29(水) 00:23:55 ID:Ql/5i4Fo
>>388
文字列だから mc1.name="mc0001"; では?
390 :Now_loading...774KB2010/12/29(水) 00:27:30 ID:TKys05Rs
>>388
mc1に参照が保持されてないなら、保持されるようにする
配列につっこんでいくとか、方法はいろいろあると思うけど
392 :Now_loading...774KB2010/12/29(水) 15:19:35 ID:Ws9B3XJv
列選択は用意されてなさそうな。

タイトルが選択されていたらハイライトする、みたいなバインディングを各行にできないかな?
393 :3912010/12/29(水) 15:41:53 ID:gc3vldym
>>392
レス有難う。
そうですね、最低タイトル選択ができればOKなのですが、これにはソート可
の状態にしなければならいないのですが myDataGrid.sortableColumns = false;
にしているので・・・

どなたか(ソート無関係の)タイトル選択の方法分かりますか?
394 :Now_loading...774KB2010/12/30(木) 20:48:49 ID:Hu1Ptf2f
FlashCS4,AS3でComboBoxの質問です。

連想配列とDataProviderを使ってComboBoxにデータを流し込んだ筈なのですが、
下のSWFのように同じ文字列(最後のデータ:Celeron)しか出ません。
http://swfup.info/view.php/0432.swf

ASの抜粋は下の通りです
var dataArr:Array = ["Pentium","Core i7","Celeron"];//表示データ

myComboBox.prompt = "CPU製品群";//初期状態

myComboBox.move(10, 10);//位置と大きさ
myComboBox.setSize(150, myComboBox.height);

for (var idx0:int=0; idx0<dataArr.length; idx0++) {
tmpObj.product = dataArr[idx0];//tmpObjはObjectインスタンス
dataProv.addItem(tmpObj);
trace("Data= "+tmpObj.product+", "+dataArr[idx0]);// 正しく出ます
}

myComboBox.dataProvider = dataProv;
myComboBox.labelFunction = xGetLabel;
addChild(myComboBox);

色々調べましたが、原因が分かりません。また、宜しくお願い致します。
395 :Now_loading...774KB2010/12/30(木) 21:20:10 ID:oyEN2GgP
>>394
tmpObjを使いまわしてるせいで、dataProvの各要素が全て同じインスタンスを参照してる状態になってる
tmpObj.product = dataArr[idx0];をtmpObj = {product : dataArr[idx0]};とでもして毎回新しいインスタンスを作れば解決できると思う
396 :3942010/12/30(木) 22:06:09 ID:Hu1Ptf2f
>>395
正にそうです(自己解決しました)。for文で毎回
var tmpObj:Object = new Object();
すればOKでした。

さんきゅう!
397 :Now_loading...774KB2010/12/30(木) 23:07:06 ID:RYSIdzTJ
flex4 についての質問です。
ある親コンポーネントにmxmlグラフィックスの子コンポーネントを追加したとします。
親をmatrix3Dを通じて変形させたとき、子のmxmlコンポーネントも同じように変形させたいのですが子が変形しません。
具体的には以下のとおりです。

var myMXMLGraphic:myComponent = new myComponent; //mxmlグラフィックスのコンポーネントを生成

var parent:UIComponent = new UIComponent; //親コンポーネントを生成。UIComponentにしなくてもよい?

parent.addChild(myMXMLGraphic); //子を親に追加。

parent.z = 0;
parent.transform.matrix3D.prependRotation(100,Vector3D.X_AXIS);
//親を変形

親をUIComponentにせず他のクラスにしたほうがいいのでしょうか?
よろしくお願いします。
398 :Now_loading...774KB2010/12/31(金) 13:45:31 ID:3IJC78co
WindowsXP、FlashCS4でFlashを作っています。
よく使うライブラリ(asファイル)が結構増えてきたのですが、新しいFlashを作るたびにライブラリもコピーしてフォルダの直下に入れています。
同じファイルが複数あると修正する時とか大変そうなのでまとめたいのですが、fla以下に置いてなくても自動的に中のライブラリを読み込んでくれるようなフォルダは存在するでしょうか?
phpの設定で言うところの「include_path = ほにゃらら」と同じで、そのフォルダの中にライブラリを放り込んでおけばfla以下にライブラリが無くてもそっちから読み込んでくれるという感じです。
399 :Now_loading...774KB2010/12/31(金) 15:20:23 ID:0QHobVLx
>>398
メニューから編集>環境設定>ActionScript>「ActionScript2.0設定」と「ActionScript3.0設定」ってボタンがあるから
該当するバージョンの方を押す>ソースパスとかを設定できるダイアログが出る
その中にパスを入力しておけば探しに行ってくれるようになると思う
手元にCS5しかないけどCS4でもたぶん同じ
400 :Now_loading...774KB2010/12/31(金) 17:47:42 ID:3IJC78co
>>399
ありがとうございます、出来ました!
401 :Now_loading...774KB2011/01/01(土) 18:00:38 ID:KxFgDHQE
FlashCS3、AS3です

img.swf(rootの1フレーム目にhoge_mc、2フレーム目にhuga_mcが配置してあり、FlashCS3、AS3でパブリッシュ)
このimg_swfを別のswfで読み込もうとしています。

↓以下を1フレーム目に直書き
var lo:Loader = new Loader();
var load_swf_name:String = "img.swf";
var url_req:URLRequest = new URLRequest(load_swf_name);
lo.load(url_req);
lo.contentLoaderInfo.addEventListener(Event.COMPLETE, load_swf);

function load_swf(eventObject:Event):void{
var load_mc:MovieClip = MovieClip(this.lo.content);
this.addChild(load_mc);
load_mc.gotoAndStop(1);※

trace(load_mc.numChildren);
trace(load_mc.getChildAt(0));
}

※の所の停止フレームが1の場合の出力結果
1
[object MovieClip]

※の所の停止フレームが2の場合の出力結果
1
null

停止フレームを2にして実行するとhuga_mcが表示されているものの
getChildAt(0)がnullで取得できません
取得するにはどうしたらよいでしょうか
402 :Now_loading...774KB2011/01/03(月) 21:27:45 ID:azI6zHGt
OpenSocialスレはまったくと言っていいほど機能してないのですが
mixiアプリに関するFlash(AS3)+Javascriptの質問はどこでするのが正しいでしょうか?
403 :Now_loading...774KB2011/01/04(火) 05:03:05 ID:Lm31EWW9
AS3,Player10,CS4です。フレーム移動の際のTimerオブジェクトの破棄が上手く
出来ません。

現在、1フレ目に500msec間隔で点滅するMC(mc0)があり、これは下のASで制御しています。
timerObj.delay = 500;//Timerオブジェクトと遅延時間
timerObj.addEventListener(TimerEvent.TIMER,oscillation_on);
function oscillation_on(evt:TimerEvent) {
mc0.visible = ! mc0.visible;
}
timerObj.start();
※1フレ目にはY軸で回転するアニメーション(traiangle)があります。

ここでEnterキーを押して2フレ目(mc0とtraiangleは無い)に移動する際、Timerオブジェクトを
破棄するため下のようにしました。
timerObj.stop();
removeEventListener(TimerEvent.TIMER,oscillation_on);
timerObj = null;

removeChild(traiangle);//回転アニメーションの削除
traiangle=null;

gotoAndPlay(2);

しかしデバックモードでプレビューするとエラーは出ないのですが、通常のプレビューでは
 Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。
が(恐らく500msecで)出力され、回転アニメが出続けています。
(Timerオブジェクトは、ちゃんとstopして、removeEventListenerして、nullにしているのですが・・・)
どこに問題があるのでしょうか。お願いします。
404 :Now_loading...774KB2011/01/04(火) 07:15:29 ID:7c0KHoxt
>>403
timerObj.removeEventListener
405 :Now_loading...774KB2011/01/04(火) 17:25:13 ID:iwWe7Jp4
>>404
あ〜そうだった・・・
さんきゅうです!
406 :403&4052011/01/04(火) 18:27:40 ID:iwWe7Jp4
すいません。連投します。
timerObj.removeEventListener にしましたが駄目でした。その代わり、

timerObj.stop();
timerObj.removeEventListener(TimerEvent.TIMER,oscillation_on);
timerObj = null;
removeChild(traiangle);//回転アニメーションの削除
traiangle=null;

を2フレ目に移動させればOKでした。
407 :Now_loading...774KB2011/01/05(水) 09:24:20 ID:FZJkiRxs
そのフレーム移動の操作内(この場合キーボードイベントenter)にタイマーイベントの破棄入れりゃいいんじゃないのかな・・・
408 :Now_loading...774KB2011/01/05(水) 19:25:23 ID:kXx0OHG0
アクセサメソッドの利用法で質問です(CS4,AS3,WinXP)
Papervision3DのReflectionViewクラスをextends した public class RefView というクラス内
にアクセサメソッドの定義として下を書きました。
var _bb:int=50;
public function get bb():int {
return _bb;//値_bbをRefViewのプロパティとして利用
}

参照側(利用する方)は、import ReflView; と書いて 
var myClass:RefView = new ReflView(); trace("bbの値= "+myClass.bb);としました。

プレビューすると発行したSWFに対して「RefView.swf には無効なデータが含まれています。」
というエラーが出ます。
本やWebを参照して書いたのですが原因が分かりません。何かヒント下さい。
409 :Now_loading...774KB2011/01/05(水) 19:33:18 ID:5QkbK++W
>>408
とりあえず参照側でクラス名間違ってるけど、そこは実際のプログラムでは正しいとして
まずアクセサメソッド抜きで問題ないかやってみたら?
410 :4082011/01/05(水) 19:36:48 ID:kXx0OHG0
(追記)
エラーの箇所は
at Script_03()//import ReflView;を書いたASファイル
at RefView()

となっています。ちなみに、
var myClass:RefView = new ReflView(); trace("bbの値= "+myClass.bb);
を消すと(本来の「参照する」という目的とは違いますが)エラーは出ません。
411 :408&4102011/01/05(水) 19:46:21 ID:kXx0OHG0
>>409
早速のレス有難うございます。
アクセサメソッド抜きでやってみたところ、状況は同じでした。

あと、RefViewクラスではsuper(0,0,true,true)で初期化していますが
これを外しても同じでした。
412 :Now_loading...774KB2011/01/05(水) 20:07:33 ID:5QkbK++W
アクセサメソッド抜きで同じなら、他が分からんと答えようないな
まぁコンストラクタで発生してるようだからその辺に問題があるんだろうけど
413 :Now_loading...774KB2011/01/06(木) 23:34:22 ID:4Nv3d6BL
使用ブラウザ Firefox3.6 IE6.0,7.0
すいません。SWFのブラウザ上での動作について皆さんに調べて欲しいことがあります。

GoogleのTextToSpeechというAPIを利用したサイトが下記にあります。
ttp://log.xingxx.com/2010/05/actionscript-30-6.html
これは「speek」のボタンを押せばFirefoxでは問題なく動作(発声動作)したのですが、
IEは6と7で駄目でした。

さらに検証を進めようと、wonderflでの例:http://wonderfl.net/c/mkKT
http://wonderfl.net/c/rgycで試そうとしたのですがIEでは6と7共にSWFがビルド自体
ができませんでした。(IEではwonderflが使えない?)

そこで皆さんにお願いですが、最初のttp://log.xingxx.com/2010/05/actionscript-30-6.html
がIEで動作しない考えられる原因は何でしょうか?
※セキュリティ警告は出ません。ただ単に発声しない状態です。
414 :Now_loading...774KB2011/01/07(金) 17:50:09 ID:JeuF8Z5x
>413
Firefox以外のブラウザがttp://translate.google.com/translate_ttsに繋ごうとしたらエラーが出るらしい
phpファイルを1個作って flashからphp経由でやればたぶん大丈夫だと思う

ttp://keyfl.blogspot.com/2010/11/text-to-speech-bug-fix-in-chrome-ie.html
ttp://blog.onebyonedesign.com/actionscript/googles-text-to-speech-engine-in-flash/
415 :4132011/01/07(金) 20:27:57 ID:ZTrgrrPI
>>414
感謝します! 試してみます!

って、最初のリンクは中国語?
417 :Now_loading...774KB2011/01/09(日) 06:56:53 ID:hmZn4ijp
AS3でhitTest()って使えるんですか?

もうひとつ
http://hakuhin.jp/as/hittest.html#HITTEST_01
このインスタンス同士のあたり判定で四角形として扱われるらしいのですがちゃんと
インスタンスのイラストの形状通りにこれを実現するにはどうすればいいのでしょうか?
418 :Now_loading...774KB2011/01/09(日) 11:00:32 ID:kFvODlrm
>>417
ムービークリップ.hitTest(x座標 , y座標, true);
としたらどうでしょう?
419 :Now_loading...774KB2011/01/09(日) 11:12:01 ID:kFvODlrm
Flash CS5です。

TextFieldで文字を表示する際に、
文字の一部が欠けて表示されてしまいます。
フォントによってはきちんと表示されるのですが……。


format.size = 30;
format.color = 0x000000;
format.font = "小塚ゴシック Pro";

field.type = TextFieldType.DYNAMIC;
field.border = false;
field.selectable = false;
field.autoSize = TextFieldAutoSize.CENTER;
field.defaultTextFormat = format; //field.textに値を入れる前にすべき
field.embedFonts = true;
field.antiAliasType = AntiAliasType.ADVANCED;
field.background = false;
field.backgroundColor = backgroundColor;
field.text = char;
field.x = -field.width / 2 + fixX;
field.y = -field.height / 2 + fixY;
addChild(field);


どなたか、解決方法をお知りの方、よろしくお願いします。
420 :Now_loading...774KB2011/01/09(日) 13:06:48 ID:hmZn4ijp
>>418
ありがとうございます
それで出来そうな感じです

もう一つ質問よろしいでしょうか?

as3初心者なのですが
flaファイルとasファイルの使い方?がわかりません
たとえばこのチャットクライアントのソース
http://www.saturn.dti.ne.jp/~npaka/flash/as30/SocketEx/index.html
これをタイムラインのフレーム1に記述してももちろん動かないわけなんですが

このソースをどうすればサンプル画像のような感じで動かすことができるのでしょうか?
421 :Now_loading...774KB2011/01/09(日) 13:19:31 ID:g7seEKl/
>>420
一番手っ取り早い方法:
CS4とかで空のASファイルを作る → 上のソースを丸ごとコピペしてSocketEx.asと名付ける
→ Flaファイルのプロパティのクラス(ドキュメントクラス)をSocketExとして保存。
→ プレビュー
※Java側の設定は分からん。

タイムラインに書く時にはpackageとかprivateとかは不要。
422 :Now_loading...774KB2011/01/09(日) 13:52:07 ID:hmZn4ijp
>>421
動きました!!
とても丁寧にありがとうございました
423 :Now_loading...774KB2011/01/09(日) 22:07:58 ID:uuJ13FQQ
質問なのですが
http://www.guerlain.co.jp/p/08butterfly/
このサイトの最初のタイトルロゴが出てくるエフェクト
(粒子が集まって文字になる)
みたいなことをしたいのですが、どういう仕組みなんでしょうか?
教えて下さい!
424 :Now_loading...774KB2011/01/10(月) 00:23:29 ID:uRkBWNZ4
>>423
ActionScript 3.0 パーティクル  文字
で検索
425 :Now_loading...774KB2011/01/10(月) 05:32:27 ID:qHiSpXgm
AS3.0 FlashCS4です。

ステージ上に外部swfファイルを呼び出し、再生した後、
コンテンツ内のボタンをクリックすると一つ前フレームに戻るようにしています。
しかしフレームを移動してもswfファイルがステージに残ってしまいます。

フレーム移動した際にステージにswfファイルを残さない(見えなくする)方法があったら教えて頂けると嬉しいです。
よろしくお願いします。
426 :Now_loading...774KB2011/01/10(月) 16:27:31 ID:xmS3NFb6
AS3.0
FlashCS5です。

行き詰まってしまいこちらへ質問に来ました。
フルフラッシュサイトを作っていて、コンテンツ1にAS3で作った時計を置いています。
(コンテンツはフレームでラベルを設定して分けています。)
私としては時計をコンテンツ1でのみ表示させたいのですが、
コンテンツ2やコンテンツ3など下層ページでも同じ場所に表示されてしまい困っています。

時計をコンテンツ1のみで表示されるようにするにはどうしたらいいでしょうか?
おしえてください!宜しくお願いいたします。
427 :Now_loading...774KB2011/01/10(月) 16:50:37 ID:h+OpiHzx
>>425, 426
他のフレームに移動する際、消したいオブジェクトのvisibleをfalseにするとか
removeChildするとか
428 :Now_loading...774KB2011/01/10(月) 17:13:21 ID:xmS3NFb6
>>427
おかげさまでできました!
ご親切にありがとうございます。
430 :Now_loading...774KB2011/01/10(月) 21:05:20 ID:qHiSpXgm
>>427
425です。
removeChildで解決しました。
ありがとうございました!
431 :Now_loading...774KB2011/01/10(月) 22:56:42 ID:VL4sJjE9
失礼します。

オリジナルクラスのオブジェクトを引数にして、
別のクラスで使用したいのですが、うまくいきません。

配列でいうところの「深いコピー(ディープコピー)」をしてしまっている
のではないかという疑問があるのですが、
Sprite型のオブジェクトを継承したオリジナルのクラスでも
そういうことは起こるのでしょうか?


以下のようなことをしたのですが、うまくいきません……。

Main.as------------------------------------------------------------
var baseObject:クラス■ = new クラス■(引数, ...);
addChild(baseObject);

var copyObject:クラス★ = new クラス★(baseObject, 引数, ...);
addChild(copyObject);


クラス★.as コンストラクタ----------------------------------------
function クラス★(inObject:クラス■, 引数:型, ...):void {
var baseObject2:クラス■ = inObject;
addChild(baseObject2);
.
.
.
432 :Now_loading...774KB2011/01/10(月) 23:24:46 ID:ujts+lmi
クラス★でaddChildしたらMainの子じゃなくなるから
そのせいで思い通りに動いてないんじゃないかな?
433 :Now_loading...774KB2011/01/10(月) 23:38:20 ID:IueKMfu7
うまくいかない時はうまくいかない、じゃなくて具体的にどうなってるのか書くべき。
エラーならエラー文書くとか、オブジェクトが表示されないとか、形がおかしいとか。
434 :4312011/01/10(月) 23:51:12 ID:VL4sJjE9
>>432
ありがとうございます!


「思い通りに」という点について、補足しておきます。
こちらの望みは、
もともとのMain.asのbaseObjectはそのまま画面に表示されたまま
新たにクラス★.asのbaseObject2が描画されて、
例えばbaseObject2をドラック&ドロップしたり、回転させたり、拡大縮小したりしても
元のbaseObjectには何も影響がないような状態にすることです。


配列の場合、
【1】array = inArray;      //深いコピー(arrayの変更がinArrayに反映される)
【2】array = inArray.concat( ); //浅いコピー(arrayの変更がinArrayに反映されない)
というのがあるようなので、
SpriteやMovieClipを継承したクラスでも【2】のようなことをしたいです。


ちなみに一応クラス★でaddChildの記述を外してみましたが、
イベントの処理が一切反映されなくなりました……。
435 :Now_loading...774KB2011/01/10(月) 23:52:59 ID:xmS3NFb6
AS3.0
FlashCS5
ド素人です。

むちゃくちゃな文字列から一文字ずつ表示したいテキストに変わっていくアニメーション
ttp://as3dosue.g.hatena.ne.jp/charzac/20081113/1226561687

このページにあるアクションを使いたくて、書いてある通り作ってみたのですが、
ド素人を抜け出せず、展開方法がわからなくて困っています。

FlowText.flaのドキュメントクラスにmyAS.Mainを指定して動いたのですが、
FlowText.flaのステージ上に1つの文章しか表示できないでいます。
もしも通常のテキストのように、異なる文章を複数表示したい場合、
フレームごとに指定して配置したい場合、どうすればいいでしょうか。
教えてください!宜しくお願いいたします。
436 :4312011/01/10(月) 23:58:12 ID:VL4sJjE9
>>433
どうもです!

「うまくいかない」というのは、
「コピー元のオブジェクトから新たなオブジェクトを複製したいのに、
画面上には1つのオブジェクトしか表示されない」
ということです。

言葉が足らず、申し訳ありません……。
437 :Now_loading...774KB2011/01/11(火) 00:03:42 ID:3jt/nsei
>>434
>>431のコードじゃbaseObjectとbaseObject2は同じインスタンスを参照することになる
■クラスに■クラスの新しいインスタンスを作って返すclone()メソッドを実装して★クラスの引数にbaseObject.clone()を渡すといいと思う
値型と参照型の違いがわかってない?
438 :Now_loading...774KB2011/01/11(火) 00:23:05 ID:Dsb4otls
深いコピーと浅いコピーの理解が逆な気がするが・・・
concatも配列の中身が参照型の場合深いコピーとは言えないが
439 :4312011/01/11(火) 00:28:50 ID:Mri8XiK6
>>437
clone()! ……を実装?

クラス■.as-------------------------------------------------------
function clone():クラス■ {
  return (値型);
}



値型と参照型は……、前者が実際の値で、後者がメモリ上の位置ですよね?
参照型ではなくて値型をreturnに入れるにはどうしたら……?

重ねての質問すみません……。



>>438
あれ、そうなんですか?
とりあえず「値型と参照型」、「深いコピーと浅いコピー」というキーワードで
検索かけてみます。
どうもです!
440 :Now_loading...774KB2011/01/11(火) 00:42:59 ID:Dsb4otls
>>439
ActionScriptではインスタンスは全て参照で受け渡しされる
ここら辺読んでみると分かるかも
ttp://help.adobe.com/ja_JP/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f56.html
441 :Now_loading...774KB2011/01/11(火) 01:37:07 ID:npAsTEt0
>> 439

例えばこんな感じ
クラス内で自身のインスタンスを作成。
プロパティを引き継いで返す。
プロパティの設定をいちいち書くのがいやなら descrbeType とか見てみるといい。

クラス■.as-------------------------------------------------------

private var _hikisuu:String;

public function クラス■(hikisuu:String):void {
  _hikisuu = hikisuu
}

// インスタンスの複製を返すメソッド
public function clone():クラス■ {
  var obj:クラス■ = new クラス■(_hikisuu);
// ex.
obj.x = this.x;
obj.y = this.y;
obj.alpha = this.alpha;
  return obj;
}
442 :4312011/01/11(火) 01:41:47 ID:Mri8XiK6
>>440
どうもです。
一応、調べてやってみたのですが、エラーが出ます……。

Main.as------------------------------------------------------------
var baseObject:クラス■ = new クラス■(引数, ...);
addChild(baseObject);

var copyObject:クラス★ = new クラス★(baseObject.clone() as Base, 引数, ...);
addChild(copyObject);


クラス■.as-------------------------------------------------------
function clone():* {
  var buffer:ByteArray = new ByteArray();
  buffer.writeObject(this);
  buffer.position = 0;
  
  return(buffer.readObject());
}



エラーは
「Error #2007: パラメータ child は null 以外でなければなりません。」
です。
443 :Now_loading...774KB2011/01/11(火) 14:00:03 ID:npAsTEt0
>>442
Sprite や MovieClip インスタンスをまるまる複製するのをイメージしてるのかもしれないけどそれはできない。
ByteArray.readObject() はどんなオブジェクトでも復元できるってわけじゃない。
今考えてる方法は一旦捨てたほうがいい。
オブジェクトの複製が設定可能な値を引き継ぐということなら >>441 のように clone メソッドで引数やプロパティを引き継ぐ。
もしグラフィックの描画など後から設定を引き継げないようなものまで複製したいと考えているならその仕組みをイチから考えないといけない。
444 :Now_loading...774KB2011/01/11(火) 21:20:52 ID:HcrJqO+A
as3で質問です。graphicオブジェクトを操作し、透明部分を描画したいと思ってます。
こんなソースで試してみました。

// 背景を黄色にする
graphics.beginFill(0xffff00);
graphics.drawRect(0, 0, 300, 300);
graphics.endFill();
var sp:Sprite = new Sprite;

// 大きな赤の円を描く
sp.graphics.beginFill(0xff0000);
sp.graphics.drawCircle(100, 100, 50);
sp.graphics.endFill();

// 赤の円の中心部分を透明色でくりぬき、ドーナツにしたい
sp.graphics.beginFill(0x000000, 0.0); // 黒をアルファ0.0で描画するという意味なので何も表示されない
// sp.graphics.beginFill(透明を示すパラメータ); // この行で何かを指定して透明色そのもので描画したい!
sp.graphics.drawCircle(100, 100, 30);
sp.graphics.endFill();
addChild(sp);

これから描画する物のアルファではなく、現在描かれている物のアルファ値を変更するような指定方法はない
でしょうか。別のDisplayObjectをマスクに利用する方法は知っていますが、ひとつの graphics オブジェクト
で完結できる方法を探しています。上のコードはUI上では「大小の円を描き、小さい方の円を選択してDEL」
で出来る事なので、AS3でも何か方法があるんじゃないかと思っているのですが、ないでしょうか。

よろしくお願いします。
445 :Now_loading...774KB2011/01/11(火) 23:55:08 ID:U4xxyenA
>>444
blendmodeでググると色々と使えそうなのが出てくると思うよ
446 :4442011/01/12(水) 00:08:59 ID:TfsIqQUX
>>445
レスありがとうございます。他のオブジェクトとの合成の結果ではなく、
ひとつのgraphicsオブジェクトだけで完結するようなやり方はないでしょうか。
447 :Now_loading...774KB2011/01/12(水) 00:28:28 ID:IUiCj1bf
>>446
「ActionScript 円弧」でググるといいかも
448 :4312011/01/12(水) 19:24:17 ID:iRYfKh8X
>>441
返事おくれてすみません。
簡単なやつなら、それを参考にしてみます!

>>443
なるほど……
残念ですが、わかりました。

作り直してみます。
ありがとうございました。
449 :sage2011/01/13(木) 01:15:22 ID:PfiXud/c
AS3のFLVPlayBackのシークバーに関して質問します。

シークバーにて動画終端のイベントが取得出来ないというのが問題です。

FlashコンポーネントのSeekBarを使用しており、
このつまみをつかんだ状態で(スクラブ状態)、つまみを右端に持っていくと
動画再生完了のCOMPLETEイベントが発生すると思っていたのですが
動画によってこのCOMPLETEイベントが発生する動画と発生しない
動画が出てしまいました。

動画側の問題なのか、FLVPlayBack側の問題なのかの切り分けがつかず悩んでいます。
些細な情報でもけっこうですのでどなたか何かご存知ないでしょうか。
使用している動画はMP4とFLVです。
450 :Now_loading...774KB2011/01/13(木) 15:56:09 ID:GkQfXP4I
addEventListener
これの読み方教えてください
あどど?
451 :Now_loading...774KB2011/01/13(木) 15:57:33 ID:GkQfXP4I
あどどで半音上げてイベントりすなーで下げるであってますか?
455 :Now_loading...774KB2011/01/13(木) 18:53:39 ID:ULbFj1z0
>>449
詳しくはないですが、
動画によってというのは、
長い動画だとイベントが発生しにくいとか、
同じ動画でも発生するときしないときがある
ということはありますか?
だとしたらシークバーの「現在の再生位置」を
最後まで持っていけてないのだと思うのですが……。


>>450
「あっどいべんとりすなー」
ですよね?
456 :Now_loading...774KB2011/01/13(木) 19:38:43 ID:ULbFj1z0
AS3、FlashDevelopとAdobe Flash CS5で試しました。
の文字についてです。
内で、文字上に詰まりすぎいるため下に調整したいです。

(1)テキストボックス内で、文字の表示する縦方向の位置を調整する仕組み
(2)leftMargin、rightMarginのように、縦方向の余白を調整する仕組み
(3)その他

のいずれかはあるでしょうか?
よろしくお願いします。
457 :Now_loading...774KB2011/01/13(木) 19:59:09 ID:Ke86gjiF
>>456
公式リファレンスガイドのTextFormatとか見れば?
458 :Now_loading...774KB2011/01/13(木) 23:13:35 ID:km+13q1d
年が変ってCS5の質問が増えたな。

って、俺も一昨日CS4→CS5にしたがw
459 :Now_loading...774KB2011/01/13(木) 23:52:14 ID:pxO5KpqT
>>450
YouTubeとかで適当なチュートリアル動画見れば、ネイティブの発音で嫌というほど聞けるよ
460 :4562011/01/14(金) 03:02:53 ID:EVFrIKXi
>>457
TextFieldとTextFormatのリファレンスを改めて確認しました。
例えばleadingで値を指定すると確かに縦方向に余白はできるのですが、
境界ボックスは下にしか広がらず、余白が変化しない上の方で文字は切れたままで、
その他にも、とりあえず縦方向の余白に関係しそうなものを
ダメ元で手当り次第にあたったつもりですが
scrollV、heightなどをいじっても、やはり変化はありませんでした……。
461 :Now_loading...774KB2011/01/15(土) 01:53:18 ID:Vi9nmAZe
FlashBuilderでFlashのコンポーネントを使いたいのですがどうすればいいですか?
462 :Now_loading...774KB2011/01/15(土) 04:08:19 ID:P5dnT5B4
>>461
swcにしてインポートすればいいんじゃないかな。
463 :Now_loading...774KB2011/01/15(土) 04:34:19 ID:Rw554OMG
FlashCS*で使える一部のライブラリはFlashBuilderでは使えなかったりするね。easingのやつとか。
これを合法的に使うには、CSをインストールするしかない。
464 :Now_loading...774KB2011/01/15(土) 11:56:18 ID:Vi9nmAZe
>>462
Adobe Flash CS5\Common\Configuration\Components\User Interface
のswcをFlashBuilderでインポートしようとしても読み込めませんって出るんですが…

>>463
使えないのですか…


FlashBuilder使用者向けに他に何かコンポーネントがあるんでしょうか?
465 :Now_loading...774KB2011/01/15(土) 19:51:35 ID:7HxEcuzb
選択範囲を指定して、その領域の描画を切り取りたいのですが、
ビットマップにしないと無理でしょうか?
467 :そら2011/01/15(土) 22:28:15 ID:Ai8Y3vdt
 私はFlash初心者です。

今、CS5のFlashのソフトを使い、Actionscript3.0を利用してFlash動画を作っているのですが、
Actonscript3.0で命令をしたところコンパイルエラーが出てしまい困っております(汗)

詳しいエラー内容は・・・1086:シンタックスエラー:leftbraceの前にセミコロンが必要です。
 というものです。

そしてエラーが出てしまったアクションの命令文は以下の通りです。

on(rollOver) {
gotoAndStop(2);
}

ロールオーバー時に2フレーム目に行ってそこで止まっててね・・・という命令なのですが。

この命令文でActionscript2.0ではエラーもなく正常にいったのですが、3.0ですとエラーになってしまいます。

3.0での正しい記述の仕方がわかる方、いましたら教えて下さい。


 ちなみに私は今、作成中の動画はActionscript3.0を使っているのですが、途中で2.0に変更することなんてできないでしょうか?

 その方法がありましたら教えてほしいです。

どうぞよろしくお願いしますm(_ _)m
468 :そら2011/01/16(日) 01:31:49 ID:pBtFnQv+

すいません、467は解決しました。
ですが、またあらたに質問が・・・すいません。。。

actionscript3.0 CS5を使っているのですが、
タイムライン制御で質問です。

stop();で再生を停止させられると思いますが、

下記の状態でレイヤー2だけを個別に停止させることとかも可能でしょうか?


レイヤー1(マスク)1〜10フレーム(ずっとループ再生させていたい。)
レイヤー2(マスクの対象)1〜10フレーム(10フレーム目で停止させたい。)

こんな感じなのですが、、、
おそらくマスクは再生させたまま、そのマスクの対象だけ停止させるのは
無理ですよね〜(汗)

ただ、イイ案などあれば、意見ほしいです。

よろしくおねがいします。

自分も実験しつつ、なにかイイ案がないか考えてみます。

469 :Now_loading...774KB2011/01/16(日) 01:52:57 ID:sTKMOsKr
>>468
レイヤー2の内容を別のムービークリップに移して、それをレイヤー2に置くとかでできないかな
471 :Now_loading...774KB2011/01/17(月) 01:49:52 ID:bDXv249m
3.0 CS4を使ってます。

コンテナに表示オブジェクトを入れた後に、同じ領域にコンテナ(Sprite)をnewすると下位層の表示オブジェクトが消えてしまいます。
これを防ぐ方法はないでしょうか?
コンテナの背景色だけ透明にできないのでしょうか。
473 :Now_loading...774KB2011/01/17(月) 02:46:14 ID:Sc2ut3HP
>472です
http://homepage3.nifty.com/j_town/flashtype/3-3.html
ここも「ボタンが表示されるまでお待ちください」って出たまま変わらないんだ…
参考になりそうなサイトさんがほとんどこんな状態で本気で困ってます・・
474 :Now_loading...774KB2011/01/17(月) 07:58:25 ID:hqRCfk3A
flashとCGIの何がわからないのかを書かないと回答はこないでしょ。
flashとCGIのどちらも知っててその連携方法がわからないのか、どちらもわからないかで対応が変わると思うよ。
475 :Now_loading...774KB2011/01/17(月) 14:04:32 ID:Sc2ut3HP
どちらも勉強不足であんまり理解できてないです…
http://1art.jp/flash/le/lesson43/lesson43.htm
このサイトとか参考になるかと思ったけど、サンプルをApacheのフォルダに入れても
cgiページが動かないんだ…。
htdocsフォルダが書き込み不可になってるのが気になるんだけど、これ可にする方法ありませんか?
476 :Now_loading...774KB2011/01/17(月) 14:37:29 ID:NyoQ/mrr
要はプロパティをたくさん集めた房を作って(バナナの房みたいなもん)、サーバーとやり取りするわけだよ。
この概念が判ればあとは簡単

つーかCGIは難しいからPHP覚えた方がいいぞ。PHPなら数ヶ月で習得できる
477 :Now_loading...774KB2011/01/17(月) 14:43:39 ID:Sc2ut3HP
httpdの中身変更しようとしてもファイルが上書き保存できないんです・・・アクセスが拒否されましたって出る
これ解決する方法はないですか?
478 :Now_loading...774KB2011/01/17(月) 16:15:13 ID:g/BB+gyB
CGIは仕組みなんだから、その言い方はおかしくね?
PHPがPerlとかより簡単てならわかるけど
479 :Now_loading...774KB2011/01/17(月) 16:29:05 ID:Sc2ut3HP
httpdの問題はなんとか解決できました><

あとは
「webサイトによってこのページの表示を拒否されました」と出て、CGIが開きません。

いろいろ調べてみて、パーミッションの設定とかが1番それっぽい原因かなとは思ったのですが、
あれってFTPで変更するものですよね?
アップロードする気がなくて、これからも自宅サーバで使用したい場合でも、
パーミッションの設定は必要なのでしょうか。その場合、どうやれば設定変更できるのでしょうか?
あれってアップロードしたファイルを設定変更するものですよね・・・(私は普段FFFTPを使用しています) アップロードしてないファイルはどうすればいいのでしょうか・・・。
480 :Now_loading...774KB2011/01/17(月) 16:33:11 ID:IW/6JQS2
どうやってそのファイルを作ったのかが気になるが、
サーバがlinuxならchmodで変更しろ。
481 :Now_loading...774KB2011/01/17(月) 16:47:01 ID:Sc2ut3HP
CGIは
http://1art.jp/flash/le/lesson43/lesson43.htm
のサンプルをそのまま使用させて頂いてます。

windows7で動かしてます
482 :Now_loading...774KB2011/01/17(月) 16:50:36 ID:g/BB+gyB
FlashもCGIもサーバにアップして試してるんじゃないのか?
それとも自鯖なの?
状況がよくわからないんだが
483 :Now_loading...774KB2011/01/17(月) 16:57:36 ID:Sc2ut3HP
どちらも自宅サーバにアップして試してます
自宅サーバのみで使用するつもりなので、パーミッションの設定とかが問題な
わけでもないかと思ったのですが、違うのでしょうか・・
484 :Now_loading...774KB2011/01/17(月) 22:44:48 ID:hqRCfk3A
サーバーのパーミッションとかならflash以前の問題なので、該当スレで解決するべき。
flashで試行錯誤できる段階になってから、またここに来たほうが>>483のためだと思うんだが……。
485 :Now_loading...774KB2011/01/17(月) 22:52:10 ID:hqRCfk3A
投げっぱなしなのも良くないので一応誘導するべきでしょうか。
http://hibari.2ch.net/test/read.cgi/mysv/1284973998/
486 :Now_loading...774KB2011/01/18(火) 02:25:01 ID:nOJYccCy
すみませんパーミッションの問題とかは解決できました!
ただのパス記述ミスだったみたいです;

それで、http://1art.jp/flash/le/lesson43/lesson43.htm
こちらのサンプルなども問題なく動作するようになり、
自分のswfファイルも試してみました。

現段階では
swf上で登録した名前と、算出したスコアをCGI側に送信・表示するように
したいのですが、
スコアは表示されるのですが名前が表示されません。

スコアは var name; としてflashで定義し、
途中で結果のスコアを値を代入しています。

名前は var Name:String = textBox.text; とし、
テキストボックスに表示された
 (正しくはflashファイル上に名前入力画面があり、
  テキストボックスで登録された名前を表示しています)
名前を文字列として格納しているつもりです。

わかりにくい説明で申し訳ないのですが、
おかしいところをご指摘いただけると助かります;
487 :Now_loading...774KB2011/01/18(火) 02:56:34 ID:nOJYccCy
なんかこんなに長々書いておいて申し訳ないんですができました;
どうやらswfを更新しても、localhostで反映されるまでに時間がかかっていたみたいです…。
何度作りなおしてもCGIページが変わらないので調べてみたら、こんな不具合があるんですね…。
上書きしたswfファイルがすぐにサーバー上で反映される方法ってないのでしょうか(´・ω・`)
489 :Now_loading...774KB2011/01/18(火) 04:50:57 ID:nOJYccCy
>キャッシュってyahooとかで検索したときに出たやつを押して表示されるあれとは違うんですか?

swfファイル上書きするたびにブラウザもF5でリロードしてるんですけど
それではだめなのでしょうか?
490 :Now_loading...774KB2011/01/18(火) 04:53:11 ID:S6haUizF
>>487
ブラウザのキャッシュ削除
491 :Now_loading...774KB2011/01/18(火) 12:08:30 ID:+xeH+kM6
>>487
URLに、?date=1234とか適当な文字列を毎回変える
492 :Now_loading...774KB2011/01/18(火) 19:57:09 ID:nOJYccCy
とりあえずリロードの際にいろいろ気をつけてみます;

それで、スコアランキングを作りたいので、
とりあえずCGIに送信・保存したデータを降順ソートしたいのですが、
このソートはCGI側・FLASH側どちらでやるべきなんでしょうか?
493 :Now_loading...774KB2011/01/18(火) 21:10:56 ID:SlI9mmem
CGI側でソートして必要な件数だけ渡す。flashで降順にソートする場合、
例えば上から10件分のデータだけが欲しい場合でも全てのデータを受信しなければソートできないから効率が悪い。
494 :Now_loading...774KB2011/01/19(水) 00:28:41 ID:yMsy9Hjq
なんとかランキングで降順ソートまでできました!
次はいよいよflash側でランキングを表示させたいのですが、
現段階では、
CGI側で降順ソートをして、とりあえず確認のために
そのままCGI側でランキングを表示させています。
これからFLASH側で表示させるなら、CGIでの表示はいらないので、
非表示にしたいのですが・・・。

今はFLASHでgetURLを使っているので、CGIページが出てしまうのだと認識しています。
FLASHからCGI側にデータを送ったうえで、CGIページの表示はさせたくないのですが、
この場合どうすればいいのでしょうか?
getURL以外に何かありますでしょうか・・・

説明下手ですみません;
495 :Now_loading...774KB2011/01/19(水) 00:30:57 ID:yMsy9Hjq
ちなみに
http://1art.jp/flash/le/lesson46/lesson46.htm
こちらのやり方で試してみたら、今までうまく動いていた
CGIが動かなくなりました・・・
497 :Now_loading...774KB2011/01/19(水) 01:37:18 ID:okOOr0oc
AS3をFlashDevelopで今日はじめたばかりのものです。

1)文字の色が反映されません。なぜでしょうか?

2)TextFieldの内容を選択不可にしたいのですがオプションはありますでしょうか?

3)addChild()すると位置が右にだんだんずれていく気がするのですが
基点のような概念があるんでしょうか?

var format:TextFormat = new TextFormat();
format.size = 16;
format.bold = true;
format.color = 0x440000;
format.align = "center";

txt = new TextField();
txt.x = -50;
txt.y = 0;
txt.defaultTextFormat = format;
txt.text = "text";
txt.autoSize = TextFieldAutoSize.CENTER;

addChild(txt);
498 :Now_loading...774KB2011/01/19(水) 01:54:19 ID:okOOr0oc
どこをクリックしてもdoClick()を呼ばせたいのですが、
クリックイベントが取得できません。。。
TextFieldを作ってaddEventListener()させるとうまくいきましたが
どこをクリックしても反応するようにしたいです。

public class test_swf extends Sprite
{
:
:
 private function init(e:Event = null):void
 {
  removeEventListener(Event.ADDED_TO_STAGE, init);
  // entry point

  this.addEventListener(MouseEvent.CLICK, this.doClick);
499 :Now_loading...774KB2011/01/19(水) 02:11:58 ID:QDoeg5nE
FlashDevelop、AS3、PHP、MySQLで学習目的の開発をしています。

AS3からMySQL内のデータを扱いたく、間にPHPを入れているのですが、
AS3、PHP間の通信を1クラスにしようとしたところでつまっています。
処理をクラス分けせずに、Main.asの中に全て書いたものは動かせています。

AS3、PHP間の通信はネットで調べた、
URLLoaderを使ってPOSTでデータをわたすものです。
PHPからの戻りについては現在はURLVariablesですが、
XMLを返すものに変更する予定です。

本文が長すぎるそうなのでここで一旦投稿させていただきます。
500 :Now_loading...774KB2011/01/19(水) 02:14:18 ID:ePsfJvU2
>>497
1) 私もFlashDevelopですがコピーして実行したら反映されました
2) TextField.selectableをfalse 3) 親要素の左上が起点
>>498 stage..addEventListener(MouseEvent.CLICK, this.doClick);
501 :4972011/01/19(水) 02:32:03 ID:okOOr0oc
もう一度やったらうまくいきまいした。ありがとうございます!
502 :Now_loading...774KB2011/01/19(水) 02:34:50 ID:yMsy9Hjq
>496
できました!
ありがとうございます><

あと、cgiページをhtmlにすることってできますでしょうか。
cgiだとリロードしたとき再試行しなきゃいけないんで、
ランキング表示ページをhtmlで作りたいのです。
503 :Now_loading...774KB2011/01/19(水) 02:35:56 ID:okOOr0oc
マウスカーソルを、アンカーに乗せたときのように
指のカーソルにしたいのですがうまくいきません。

public class test extends Sprite
{
public function test():void
{
this.buttonMode = true;
this.useHandCursor = true;
this.mouseEnabled = true;
504 :Now_loading...774KB2011/01/19(水) 06:24:43 ID:azBgtxRW
問題のクラス分けですが、
・PHPに送信する任意数のデータとPHPのURLを引数に
・PHPからわたされた変数(あるいはXML)を戻り値とする
ものをつくりたいと考えています。
現在PHPからの受け取りを、
URLLoaderのCOMPLETEイベントで処理しているのですが、
URLLoader.load実行後、COMPLETEイベント発生前に、
次の行のReturnを実行してしまいます。
ならばReturn前に戻り値用変数に値が入るまでループさせれば、
と考えたのですが、ループ中はCOMPLETEイベントが発生しないようで、
無限ループとなりました。
ループ中に他言語のwaitやsleepのようなものを入れれば、
と考えたのですが、ASにはそういったものは無いらしいです。

これは今回の環境において実現可能なものなのでしょうか?
505 :Now_loading...774KB2011/01/19(水) 13:26:12 ID:mwditgUF
>>504
言語とか環境が無いから推測だけど AS3 かな?
他の言語にあるような wait 命令に直接当たるような物は AS3 にはありません。

このような場合は読み込むクラス (仮に CGISender クラス) を別途用意すればいい。
具体的に CGISender は EventDispatcher を継承し、
そして、sender.send({param1:"hoge"}, callBackFunction); という感じに送信出来るようにし、
CGISender 内の URLLoader の Event.COMPLETE イベントを処理する関数で callBack を呼び出せばいい。
その時に引数に受信したデータを渡せば大丈夫かな。
507 :Now_loading...774KB2011/01/20(木) 01:37:58 ID:+UI1txlW
>>505
499からの続きでした。
間が空いて読みにくくなり申し訳ありません。

EventDispatcherがキーワードだったようですね。
ご提示いただいた方法とは少し違うのかもしれませんが、
COMPLETEイベント内で自作のイベントを発生させることで、
目的のクラスを分離させることができました。
アドバイスありがとうございました。
508 :5032011/01/20(木) 17:30:03 ID:rXNqyk0K
マウスカーソルの件、まだ解決しません。
どなたかアドバイスお願いできませんか。。。
509 :Now_loading...774KB2011/01/20(木) 18:13:47 ID:vTFGAIEc
>>508
>1みてちゃんと書けば答えてくれるかも。
情報惜しまずかけって。
510 :Now_loading...774KB2011/01/20(木) 21:20:59 ID:4Bm31kyk
環境: FlashCS4,AS3,Player10
入れ子MCにaddChlidしたMC(名前はendM)のボタンモードが有効にならない上に、
親が参照できず困っています。

endMはmc0.mc1.mc2の子です。endMのタイムラインにボタンモードとして buttonMode=true;
親確認用に trace("親は: "+parent); と書きました。
通常 addChlid すると 親は: 〜 と表示されるのですが何も出ません(エラーも出ません)。

おかしいと思い、addChlidではなくオーサリングでmc0.mc1.mc2の下に置いたところ、
問題なくボタンモードが有効かつ親が参照できました。

子として表示はされていますが、MCとして機能していない状態です。
考えられる原因は何でしょうか?
※作業の都合上、同じPC内にFlashCS5も載せています。
511 :Now_loading...774KB2011/01/20(木) 22:52:24 ID:rXNqyk0K
AS3、FlashDevelopです。

"hoge.swf?param=日本語"

の形で実行するFlashを作成予定です。
(実際はURLエンコードすると思います)

ブラウザやサーバの環境によって文字コードが変わると思うのですが、
どのように判別、変換すればよいでしょうか?
512 :Now_loading...774KB2011/01/20(木) 23:04:47 ID:W7DzN38E
>>510
mc0からmc2までの、mouseEnabledがfalseになっているか
endMのmouseEnabledがtrueになっているか確認
trace()の件に関しては、それだけの情報ではわからん
513 :Now_loading...774KB2011/01/21(金) 00:51:31 ID:WASDzn+m
知恵袋で聞いたけど上手く出来ないので聞きます。
↓のアドレスの内容を実現したいのですが回答してくださった方がカスタムクラスを作りプロパティ(url)を設定して
クラス名(event.target).urlで取得出来るとのことでしたが型変換に失敗して上手く出来ません。
どうすれば良いでしょうか?
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1454027624
515 :5102011/01/21(金) 03:51:02 ID:gVoX+cS6
>>512
さんきゅうです。
見直しましたが、「mc0からmc2までの、mouseEnabled」と「endMのmouseEnabled」
に該当する記述は見つかりませんでした。

そこで実験的に、子であるendMのタイムライン(フレームアクション)に var theNum:int = 100;
とだけ書いて、この親(mc2)で endM.buttonMode=true; としたら指マークが出ました。

また同じく親側にてendM.addEventListenerして、クリックした時
trace("マウスイベントと親= "+mouseEvt.target+", "+parent);を実行するようにしたところ
正しくターゲットと親が取得できました。

しかし、この親(mc2)からendM.theNumを取得するとゼロになり、MCとして役目を果たして
いません。また、endMは2個のフレームを持っていて1フレ目でstop();をしているにも関わらず
勝手に2フレ目に移動しています。

まとめますと、
? addChlid対象のMCのフレームアクションは無効。
? 親からの記述は実行できる。

平たく書くと、上官からの命令は聞くが部下本人は全然自発的に行動しなかったり、自分で立てた
規範を無視する状態です。

どなたかこんな症状は現れましたか?
516 :Now_loading...774KB2011/01/21(金) 09:42:15 ID:qmN5rqqU
flash8からアップデートしていない者ですが、質問させてください。
オーサリング時に行う、ビットマップ→トレースを動的に行いたいのですが、
CS5ではビットマップ画像をベクター化するメソッドが存在するでしょうか?
bitmapDataと逆の機能にあたるメソッドです
517 :Now_loading...774KB2011/01/21(金) 10:16:13 ID:i7C0NJPX
スレ違いだったらすんません。

FlexBuilder3を買ったとたんに
FlashBuilder4が出ちゃって
ちょっと存した気分になったんですが、
FlashBuilderの次版がでるのはいつ頃と
目論んでおけばよいでしょうか?
518 :Now_loading...774KB2011/01/21(金) 11:43:24 ID:AF7WulWG
>>515
環境もかなり枯れて来ているから、
システムのバグとかではないのは間違い無かろう。
断片的でわからんから、サンプルプロジェクトなりファイルなりを
アップロードしたほうがいいんじゃない?
519 :Now_loading...774KB2011/01/21(金) 12:41:20 ID:KQ0asYfr
>>515
記述が見つからない、のではなく、それらはプロパティなので
traceで値を確認することができるはず

おそらくは、フレームアクションが無効なのではなく
確認する時点で値が0になるような作りになっているだけだと思われる
実行のタイミングなどをひとつひとつ追って、どのタイミングで
どこで何が実行されているのかを確認すれば解決するはず

それからaddChildなどを使う場合は、フレームアクションとの併用はおすすめしない
たとえば、addChildされるMCは、フレームアクションでstop()するのではなく
クラスのコンストラクタ内でstopする必要がある
他にもフレームアクションを取り入れているなら、それが思った通りの動作にならない原因の
可能性もある

これ以上は、Flaの具体的な作りなど見ないとちょっとわからない
520 :Now_loading...774KB2011/01/21(金) 18:21:04 ID:dhmN66NZ
クッキーを取得して、以前使ったことがあれば名前入力欄に事前に名前が表示されてる、
っていうのをやりたいんですけど、
これについて説明してくれてるところとかありますか?
探したけどうまく見つけられません;
521 :Now_loading...774KB2011/01/21(金) 18:25:56 ID:KQ0asYfr
>>520
SharedObjectで検索
522 :Now_loading...774KB2011/01/21(金) 18:40:20 ID:dhmN66NZ
>>521
これは便利ですね!ありがとうございます!
523 :Now_loading...774KB2011/01/21(金) 19:47:15 ID:dhmN66NZ
>>ちなみにこれって、使用したパソコンの電源一度落とした後でも有効なんでしょうか?
525 :Now_loading...774KB2011/01/22(土) 16:24:03 ID:iqD+PT8n
http://level0.kayac.com/2009/12/to_fresh_flasher_1.php?utm_source=twitterfeed&utm_medium=twitter
このURLのサイトに記載されている、ページャー機能というものを実装してみたいのですが
なかなかうまくいきません。
*入りきらないため重要な部分意外は省略しています

private var _textfield:TextField;
public function set data(value:MenuData) :void{
  _menuData = value;
  _menuData.addEventListener(Event.CHANGE, onUpdate); //ページ保存変数が変動すると動く
}
public function Control(view:DoubleView, view2:DoubleView,value:MenuData) {
  next_button = new PageButton(new R_BUTTON(),new R_BUTTON()); //次へ
  back_button = new PageButton(new L_BUTTON(), new L_BUTTON()); //前へ
}
private function nextView(event:MouseEvent):void {_menuData._pageNum += 1;//別クラスに保存してあるページ数保存変数に格納している}
private function backView(event:MouseEvent):void {_menuData_pageNum -= 1;//上と同じ}
private function onUpdate(event:Event = null):void { //dispatchEventを使って、ページ保存変数が変動したとき動くようにした関数
  if (_menuData.pageNum == 1) {removeChild(_textfield);}
  else if (_menuData.pageNum == 2) { addChild(_textfield);}
  else if (_menuData.pageNum == 3) { removeChild(_textfield);}
}
このように作ろうと考えているのですが、back_buttonを押したときに_textfieldをリムーブしなければならないのですが
このやり方だと最初はaddChildしていないのでページ1でremoveChildするとエラーが出てしまいます。
何か方法はないでしょうか。
それともこういったページャー機能を作るさいにはもっとまったく別の組み方を考えなければいけないでしょうか。
526 :Now_loading...774KB2011/01/22(土) 16:27:33 ID:bLb9C4e8
>>525
とりあえずcontainsでaddChildされてるか調べて、されてたらremoveすれば?
527 :510&5152011/01/23(日) 00:24:20 ID:klpw12Qn
>>519
さんきゅうです。
「mc0からmc2までの、mouseEnabled」と「endMのmouseEnabled」をtraceで確認
したところ全部Trueでした。


>>それからaddChildなどを使う場合は、フレームアクションとの併用はおすすめしない

もっと根本的な問題(というかほぼ確定的)なのは、ある子孫以降にMCをaddChild
すると、そのMCの1フレ目が無視されるということが判明しました。

つまりゼロをステージとすると4段目(4世代目)の子は2フレ目から開始されるということ
になります。これは、addChlid対象のMC(名前はendM)とは別に実験的にフレームを2個持つ
MC0を用意し、これをaddChildした実験で確かめました。

MC0もやはり勝手に(stopを入れていても)2フレ目に移動するので、意図的にダミーの
(絵柄のみの)フレームを1フレ目に置き、2フレ目に本来のASを書いたたところ正しく
マウスイベントが取得できました。

以前、「フレームアクションの1フレーム目は鬼門だから気を付けるべし」という記述が
Webにあったので、もしかするとこのトラブルのことを指しているのかも知れません。
528 :Now_loading...774KB2011/01/23(日) 00:59:29 ID:rgdH6dwt
>>527
まず、mc0からmc2までの、mouseEnabledをすべてfalseにする
mouseEnabledの詳細については、ヘルプとか見てください

1フレーム目にはいろいろと難しい点があるが、「バグ」ではないです
大抵は、アクションの実行順序の問題
たしかMCを動的にnewした段階で、MCのコンストラクタが実行され
それがMCを初期化するので、1フレーム目のstopはなかったことになる、とか
そんなだったはず(違ってたらすまん)

とにかく、フレームアクションは実行のタイミングが遅いので、制御が面倒です
動的にMCを配置したいなら、クラスのコンストラクタ内に最初に必要な処理を書くべき
529 :Now_loading...774KB2011/01/23(日) 02:52:07 ID:UfTC2hLS
これで0(true)が出て欲しいのですが-1(false)になってしまいます。
配列に入れたPoint型の比較検索はどうしたらいいのでしょうか?

var pt : Point = new Point(0,0);
var pt_copy : Point = new Point(0,0);
var test_array : Array = new Array;

pt.x = 100;
pt.y = 100;
pt_copy.x = pt.x;
pt_copy.y = pt.y;

test_array.length = 0;
test_array.push(pt);

trace(test_array.indexOf(pt_copy));
530 :Now_loading...774KB2011/01/23(日) 03:52:08 ID:KTvdTN/W
>>529
indexOfは===で比較するから同じオブジェクトじゃないとtrueにならない
forで回してPoint.equal()で比較とかしかないんじゃね?
531 :Now_loading...774KB2011/01/23(日) 03:57:33 ID:KTvdTN/W
ていうか、オブジェクトの比較なら==でも同じオブジェクトじゃなきゃtrueにならんな
素直に比較して見つけるしかないんじゃないかな
532 :Now_loading...774KB2011/01/23(日) 04:15:49 ID:UfTC2hLS
了解です別の方法でやってみます。
ありがとうございました!
533 :Now_loading...774KB2011/01/23(日) 17:01:47 ID:fFzjDcmD
質問です。

シーンの中にmc1とmc2があります。
mc1の中にmc3があります。
そのmc3の中にボタンが設置されていて
ボタンを押すとmc2のあるフレーム(ラベル設置)へ飛びたいのですが、うまくできません。
わかる方教えて下さいお願い致します。

ちなみに同じ構成のシーンがいくつかあって、シーンをまたいで同じ条件下で飛ばしたいのですが。
534 :Now_loading...774KB2011/01/23(日) 17:08:53 ID:/D1qLUuQ
>>533
・ASのバージョンは何ですか?
・「うまくできない」とは、具体的にどういう状況のことですか?
(例:ボタンを押しても反応しない、別のフレームに飛ぶ、など)
・どこにどのようなスクリプトを記載していますか?

このくらいは書いて
その質問だけだと、情報少なすぎ
535 :Now_loading...774KB2011/01/23(日) 17:21:31 ID:MwJTmuCt

ActionScript3.0で、コンポーネントを隠す方法を
教えてください。想定しているフレームワークはFlex3です。

Win32APIならば ShowWindow(SW_HIDE)のようにして
隠せるのですが、AS3には該当するAPIが見当たりません。
仕方ないので、現状は次のいずれかで対応しています。
(1)コンポーネントのAlpha値を0.0にする
(2)コンポーネットのwidthとheightを0にする。

よろしくお願いします。
536 :Now_loading...774KB2011/01/23(日) 17:21:33 ID:fFzjDcmD
>>534
swishというソフトを使っているため、ASではなく厳密にいうと独自のスクリプトで、
AS2.0の、クラスがないものと考えて頂けたら。。
ボタンには
on(release){
_root.gotoAndPlay("LABEL");
}
と書いてます。

挙動は、まずボタンを押しても飛びません。
537 :Now_loading...774KB2011/01/23(日) 18:53:43 ID:fFzjDcmD
>>533
具体的に書くと

シーン1_mc1_ボタン1を押すと
シーン2_mcAのあるラベルから再生

って感じです。
どう記述していいかわかりません。
538 :Now_loading...774KB2011/01/23(日) 21:46:52 ID:slIovO8F
AS3.0です。

外部ASファイルをインポートして
その外部ASファイルからKeyEventを受け取ろうと
stage.addEventListnerとしても
nullのオブジェクトの参照ではじかれてしまいます。

Flash本体に同様に書けば通るのですが
外部から受け取ろうとする場合はどうすればいいのでしょうか?
539 :Now_loading...774KB2011/01/23(日) 22:20:45 ID:/D1qLUuQ
>>537
今同じものつくってみたけど、動作したよ
移動先のフレームが読み込まれてないとか、そういう可能性は?
それとも、シーン2にあるラベルじゃなくて、シーン2に配置されている_mcAのなかの
ラベルに飛ぶってこと?

ただ2.0あたりだと、MovieClipがシーンをサポートしていないので
シーンの使用は非推奨だから、できればシーン無しで設計するほうがいいとは思う
540 :Now_loading...774KB2011/01/23(日) 22:48:04 ID:fFzjDcmD
>>539
シーンまとめて作ったら解決いたしました!
お騒がせして申し訳無いです。
ありがとうございました。
541 :Now_loading...774KB2011/01/24(月) 00:28:40 ID:aBeplfTC
AS2.0です。
あるクラスに、自作クラスを利用して、いくつかクラス変数を宣言・初期化しています。
自作クラスを利用している変数の内容の一部が、最後に宣言・初期化した値に置き換わっ
ているようなのですが、原因が分かりません。

class Main{
 // 実行部分
 exec(){
  trace(Constant.TEST1.getStr()); // "BBB"が出力される
  var i : Number;
  for(i = 0; i < 3; i++){
   trace(Constant.TEST1.getValue(i).toString()); // ※※※12が出力される
  }
 }
}
class Constant{
 // クラス変数
 public static var VALUE0 : Array = new Array(10, 10, 10);
 public static var VALUE1 : Array = new Array(11, 11, 11);
 public static var VALUE2 : Array = new Array(12, 12, 12);
 // 自作クラス変数
 public static var TEST0 : Test = new Test("AAA", VALUE0);
 public static var TEST1 : Test = new Test("BBB", VALUE1);
 public static var TEST2 : Test = new Test("CCC", VALUE2);
}
543 :Now_loading...774KB2011/01/24(月) 06:07:31 ID:Nr6G9EAe
>>535
visible
544 :Now_loading...774KB2011/01/24(月) 15:19:50 ID:e1UytUeZ
お疲れ様です。AS3の質問なんですが、複数の円を描きたいのですがうまく書けません。そして、変数の型宣言が出来てないというエラーが返ってきます。これら2つのエラーについて対処方法を教えてください。お願いします。http://wonderfl.net/c/1N3i
545 :Now_loading...774KB2011/01/24(月) 15:37:04 ID:cDZC806L
>>541
class Test{
public var str : String;
public var value = new Array(0, 0, 0);
public function Test(str : String, value : Array){
this.str = str;
/*var i : Number;
for(i = 0; i < 3; i++){
this.value[i] = value[i];
}*/
this.value=value
}
public function getStr() : String{
return this.str;
}
public function getValue(i : Number) : Number{
return this.value[i];
}
}
546 :Now_loading...774KB2011/01/24(月) 21:25:43 ID:aBeplfTC
>>545
解決しました。
ありがとうございました。
547 :Now_loading...774KB2011/01/24(月) 21:33:04 ID:Dgn6Fpvv
よくFlash広告でembedタグの縦横サイズを無視して(?)はみ出すものがありますが、
あれはどうすればできるのでしょうか?
548 :Now_loading...774KB2011/01/24(月) 23:14:06 ID:Dgn6Fpvv
AS3、FlashDevelopです。
swfの領域のどこにマウスを置いても、指マークのカーソルにしたいのですが
下記コードで動いてくれません。
どうすればよいでしょうか?

package
{
 import flash.display.Sprite;
 import flash.events.Event;
 
 public class Main extends Sprite
 {
  
  public function Main():void
  {
   if (stage) init();
   else addEventListener(Event.ADDED_TO_STAGE, init);
  }
  
  private function init(e:Event = null):void
  {
   removeEventListener(Event.ADDED_TO_STAGE, init);
   // entry point
   this.buttonMode = true;
   this.useHandCursor = true;
   this.mouseEnabled = true;
   this.mouseChildren = true;
  }
  
 }
 
}
550 :Now_loading...774KB2011/01/25(火) 00:10:42 ID:VtUOvJp1
>>547
ExternalInterfaceでJavaScriptをコールしてFlashが格納されてる(div)要素のサイズを書き変える
551 :Now_loading...774KB2011/01/25(火) 00:44:55 ID:qhQFZ314
>>548
package
{
import flash.display.Sprite;
import flash.events.Event;
 
[SWF(width="800", height="600",backgroundColor=0x777777, frameRate=30)]
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
  
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
  // entry point
this.buttonMode = true;
this.useHandCursor = true;
this.mouseEnabled = true;
this.mouseChildren = true;

var canvas:Sprite = new Sprite();
canvas.graphics.beginFill(0xED1A3D);
canvas.graphics.drawRect(0, 0, 800, 600);
canvas.graphics.endFill();
addChild(canvas);
}
}
}
553 :Now_loading...774KB2011/01/25(火) 18:01:33 ID:W+eROzVm
ASが関係するのでこのスレで質問させてくださいませ。

7年前までFlashゲームクリエイターをしておりましたが、現在は一般企業に勤めております。
社内でe-ラーニングの導入を検討していたのですが、高価で導入が見送られました。
そこで何とかFlashをベースにe-ラーニングを作成できないものか思案中です。

e-ラーニングのインターフェイスをFlashで作成するとして、
・ログイン認証
・データベースに実績をアウトプット
をする事になるかと思うのですが、一般的にはどのようなプログラムで固めて行くのが宜しいでしょうか。
ポスグレ+PHP+AS で連携は可能と思われるのですが、
それで本当に可能なのかが知りたいです。

また、既に同じような事をされている方の方法や、どんな些細な情報でも良いので、頂けると嬉しいです。
なにとぞ宜しくお願いします。
554 :Now_loading...774KB2011/01/25(火) 18:49:36 ID:8MGboW6y
>>553
可能。
ASからPHPにHTTPリクエストを送れる。
555 :Now_loading...774KB2011/01/25(火) 19:44:27 ID:W+eROzVm
>>554
返信thxです!
ASからPHPに送受信が出来る事を教えて頂けたので、
後はPHPからDBへの送受信を固めるだけで実装できそうです。

本当にありがとうございました。
556 :Now_loading...774KB2011/01/26(水) 11:41:24 ID:Y2dl4m2n
>>553
それを質問しないとわからんようでは厳しいと思うんだが。

似たようなシステムはいっぱいあるぞ。
まぁ、需要は内容次第だから、実装には関係ないだろうけど。
557 :Now_loading...774KB2011/01/26(水) 19:39:55 ID:EvsBwang
ボタンを押すとコマ送りのアニメが動きゲージが減るようなモノを作りたいんですが
どうすればいいでしょう?
ボタンを押してゲージが減るのは出来るんですが
ボタン押す→ゲージ減る→フレーム移動→元の位置に戻る→ゲージも戻る
となってしまいます
CS5とAS2を使ってます
558 :Now_loading...774KB2011/01/26(水) 19:40:37 ID:4E4FNnMR
test
559 :Now_loading...774KB2011/01/27(木) 03:44:53 ID:OWUaII+f
>>558
そこで問題なのは何?
元の位置に戻ること?
ゲージも戻ること?

とりあえず、ゲージとアニメを別々のムービークリップで作って
ゲージMCは最後のフレームにstop()
ボタンを押したら、それぞれのMCをgotoAndPlayさせるのでどう?
560 :5482011/01/27(木) 13:39:05 ID:+xQJlpS5
>>551
ありがとうございます。上記コードでうまくいきました。
ただ、その後にTextFieldなどをaddChildするとうまくいきません。
561 :5482011/01/27(木) 13:53:49 ID:+xQJlpS5
追加で質問ですけど、

>canvas.graphics.drawRect(0, 0, 800, 600);

左上が0,0に指定されているのに、左に50ピクセルくらい(目視)の余白があるのはなぜでしょうか?
562 :Now_loading...774KB2011/01/27(木) 20:52:56 ID:GymDGNsE
表示リストって表示できるの?メニューに表示リスト表示するってのが無いんだが
564 :Now_loading...774KB2011/01/28(金) 17:28:36 ID:YHWbn+0s
AS2.0で、配列についてです。

hairetu = new Object();
hairetu={
a:1,
b:2,
c:hairetu["a"]+hairetu["b"]
}
trace(c)
で「3」が出てきてほしいのですが、どうすればいいのでしょうか
565 :Now_loading...774KB2011/01/28(金) 18:55:21 ID:tcnBgraC
AS2.0やったことないけど・・・
こんな感じかな?
キャストとか作法が違ってるかもしれんが


hairetu = new Object();
hairetu={
a:1,
b:2,
}

hairetu["c"] = int(hairetu["a"])+int(hairetu["b"] )

trace(c)
566 :Now_loading...774KB2011/01/28(金) 19:19:08 ID:1GLI+Azk
>> 564

配列じゃなくてオブジェクトね

var hairetu:Object = new Object();
hairetu = {
a: 1,
b: 2
}
hairetu.c = hairetu.a + hairetu.b;
trace(hairetu.c);
568 :Now_loading...774KB2011/01/28(金) 19:41:09 ID:OMptRVIv
>>565 >>566
オブジェクトを宣言した後でなく、{}内で済ませたいのですが仕様的に無理なんでしょうか
569 :Now_loading...774KB2011/01/28(金) 20:15:02 ID:1GLI+Azk
>>568

いろいろ試してみたけど、俺には出来ないっぽいなぁ

どうしてもObjectのnewと同時に代入終わらせたいなら

var hoge1:Number = 1;
var hoge2:Number = 2;

var hairetu:Object = {a: hoge1, b: hoge2, c: hoge1 + hoge2};
trace(hairetu.c);

とかはだめなんかな
570 :Now_loading...774KB2011/01/28(金) 20:22:54 ID:PKjm9iN/
>>568
いっそクラス作っちゃいなよ
572 :Now_loading...774KB2011/01/28(金) 22:17:50 ID:OMptRVIv
なんだか無理みたいですね
ありがとうございます。あとクラスとはなんですか
573 :Now_loading...774KB2011/01/29(土) 15:38:10 ID:7CQ9eu2N
>>572 をクラス化するってどんな感じになるんだ?
574 :Now_loading...774KB2011/01/29(土) 17:05:42 ID:/PA5Joz9
コンストラクタ内で、aとbの値を入れた後に、c = a + bってやっときゃいいだけじゃね?
あるいは、a + b の値を返すメソッド作るとか?

>>572
クラスについてはヘルプ見るとかググるとかで
575 :5352011/01/30(日) 00:07:21 ID:FN2cN3mU

>>543

お礼が遅くなりましたが、
どうもありがとうございます。
576 :Now_loading...774KB2011/01/30(日) 00:39:40 ID:1DD2xeWJ
文字列のエンコードを変換したいのですが、byteArrayがnullになってしまいます。

var str:String;
:
var byteArray:ByteArray = str as ByteArray;
var html:String = byteArray.readMultiByte(byteArray.length, "shift-jis");
577 :Now_loading...774KB2011/01/30(日) 15:41:01 ID:ak58tC3A
>>576
as は型変換で、String は ByteArray に直接変換できない。
その場合なら、

var str:String;
// ...
var byteArray:ByteArray = new ByteArray();
byteArray.writeMultiByte(str, "shift_jis");
byteArray.position = 0;
var html:String = byteArray.readMultiByte(byteArray.bytesAvailable, "shift_jis");

とすれば行けるかな。
578 :5762011/01/30(日) 21:24:23 ID:1DD2xeWJ
>>577
ありがとうございます!上手く行ったような気がします。
FFがダメっぽいので追加で質問させてください。

根本の問題点がASにあるか分からないのですが、、、。

WinXP上にApacheをデフォルトの設定で構築して、
AS3でコードを書きました。

test.swf?str=あいうえお
のようにブラウザから入力して動かすものを考えているのですが、
文字コードがどうなるかよくわからないので、下記のようなコードを書いて、
引数を、そのまま画面に表示、sjis/euc/utfにエンコード変換して表示、
というように一覧を表示させてみたのですが、
IEとFFで挙動が違います。

IEではSJISだけ空っぽで、他はきちんと表示されます。
FFではどれも文字化けした値になります。
これは日本語の場合で、英語のみの場合はすべて正しい値になります。

きちんと理解したいので、原因と対策を知りたいですが、
ヒントだけでもお願いします。

582 :Now_loading...774KB2011/01/30(日) 23:35:32 ID:VshDe6v4
AS2です

音を止めたり音量調節をする制御のバーを作成し、それをフレーム5に配置しました。
フレーム5にはボタンがあり、それをを押すとフレーム30に飛び、
フレーム30にあるボタンを押すとフレーム5に戻るようにしてあります。

ここでフレーム30からフレーム5に戻るとまた音声を読み込む為に音が二重に流れてしまいます。
自分の思いつく策を色々と試してみたものの上手く止まってくれずに困っています。
二重に再生させないようにするにはどうしたら良いでしょうか?
583 :Now_loading...774KB2011/01/30(日) 23:39:57 ID:qE4ul60u
as3.0

お絵描きアプリを作成していて、
フォトショップでいうctrl+/ctrl-で、オブジェクトではなく視点?の拡大縮小をしたいのですが、
scaleを変えるしかないのでしょうか?
またその際、ペン等のサイズも同じ倍率にしないといけないのでしょうか?

よろしくお願いします
584 :Now_loading...774KB2011/01/31(月) 01:52:33 ID:GAePHGAt
>>583
むしろなんでスケールじゃダメなんだ。
キャンバスサイズ広げるわけじゃなくて拡大率なんだからスケールでいいだろう。

BMPでやってるから線がきたなくなる、って意味なら、
巨大なキャンバス作って25%にでも縮小した状態を100%として扱えば良いんじゃない。

それかストローク保存しておいて拡大する度に線の再描画だな。
585 :Now_loading...774KB2011/01/31(月) 02:28:48 ID:/6KNrYxR
>>582
フレーム5に来た時、フラグがたってればなにもしない、
フラグがたってなければサウンド読み込み&再生を実行
サウンド再生した時に、フラグをたてる
という仕組みにするのはどうでしょう
586 :Now_loading...774KB2011/01/31(月) 12:03:56 ID:u3lHdpSc
>>584
ありがとうございます!

BMPでやってるので拡大縮小されると厳しいですね。
スケールを変えれば実装可能と思いましたが、上記問題を解決する方法がわかりませんでした。

ストロークの保存が実用的だと思います。

参考になるサイトでもあれば教えてください!
as3.0 ストローク 保存で検索するとこのスレがトップにきてしまいます。。
587 :Now_loading...774KB2011/01/31(月) 15:09:19 ID:XXk9jQu6
Adobe Flash Builder 4 Standardを使っている者です。
超簡単な掲示板(オールFlash)を作りたいと思っています。
まだ始めたばかりの初心者です。

やり方ですけど
1、入力フォームを作り
2、変数を宣言して
3、スクリプトを書く

ですよね?
間違いないでしょうか?
588 :Now_loading...774KB2011/01/31(月) 15:15:36 ID:7YMD1p5E
掲示板ってことは複数人で使うのが前提だろうが、
サーバ側はなにも考慮してない様に見えるが大丈夫か?
590 :Now_loading...774KB2011/01/31(月) 18:10:50 ID:7YMD1p5E
サーバ側ナシってどういうことよw

それと、2,3が独立してるところがわからん。
スクリプト内で宣言するのが変数だろ。

超簡単な掲示板であっても、
入力フォームを保存する先はサーバだし、
ActionScript側のスクリプトなんて、ほんの数行なんだが。
593 :5872011/01/31(月) 18:18:34 ID:XXk9jQu6
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" width="559" height="472">
<fx:Declarations>
<!-- 非ビジュアルエレメント (サービス、値オブジェクトなど) をここに配置 -->
</fx:Declarations>
<mx:Form x="130" y="79" width="300" height="300">
<mx:FormItem>
<s:TextArea/>
</mx:FormItem>
<mx:FormItem>
<s:TextInput/>
</mx:FormItem>
</mx:Form>
</s:Application>


これでどうやって書くかがよく分からないんですよ
自分でも試行錯誤してるんですけど
すみませんけど、お願いします。
594 :Now_loading...774KB2011/01/31(月) 18:46:05 ID:7YMD1p5E
まぁ、色々とたりんのはわかってるんだろうが、
掲示板といったら必要な機能があるだろ。
今のままじゃ過去の発言が見れないぞ。
まず、それ用の部分を追加。

つぎに、現在は投稿欄のみあるようだから、
その下にでもボタンでも追加。
で、そのボタンを右クリックすると、「Clickハンドラーを生成」ってメニューがでるから、
選択すると、
protected function button1_clickHandler(event:MouseEvent):void
っていうのができる。ボタンの方のmxmlを見るとこれを呼ぶように書かれてるはず。
で、そこにサーバ側の呼び出しを書く。

サーバ側は何で作るつもり?PHPやらJavaやらいろいろあるわけだが。
595 :5872011/01/31(月) 18:53:11 ID:XXk9jQu6
親切にありがとうございます。
自分で挑戦してみます。
596 :Now_loading...774KB2011/01/31(月) 19:11:26 ID:7YMD1p5E
Flexでググれば例はいっぱいあると思うんだが。
ここで聞くよりずっとはやいぞ。
597 :Now_loading...774KB2011/01/31(月) 19:49:47 ID:TK1bzyXT
>>585
ありがとうございます。
ですが、何もしないと言うのがわかりません。
フレーム5に戻った時にフレーム5のタイムラインに音量バーの入ったMCを配置しているので勝手に読み込まれますよね?

フレーム5の音量MCに
soun_flg = true;

if( soun_flg ) {
//なにもしない?
} else {
this.play();
soun_flg = true;
}
これだと二重に再生されてしまいます。
598 :Now_loading...774KB2011/01/31(月) 20:06:47 ID:/6KNrYxR
>>597
>タイムラインに音量バーの入ったMCを配置しているので勝手に読み込まれますよね?

いや、勝手に読み込まれるのではなく、音量バーの設置と同時にサウンドを読み込むように
作っているから、その通りに動作してるだけ
音量バーとサウンドの読み込みの関係がわからないので、具体的なことは言えないが
要は、読み込まれないように作ればいいだけだよ
599 :Now_loading...774KB2011/01/31(月) 20:38:03 ID:TK1bzyXT
>>598
ttp://wktk.vip2ch.com/vipper1587.jpg
これが音量MCの中に入っています。

読み込まれないようにと言うのが難しい…
音量MCのフレーム1にフラグを仕込んでそれを親フレームで判断するって感じでしょうか?
600 :Now_loading...774KB2011/01/31(月) 21:03:22 ID:TK1bzyXT
音量MCにフラグを入れてみた所、上手く再生が出来るようになりました!
ID:/6KNrYxR様、大変貴重なレスをして下さいまして、ありがとうございました
感謝しつくせません
これでやっとゆっくり眠れそうです
本当にありがとうございました
601 :Now_loading...774KB2011/01/31(月) 23:24:38 ID:GAePHGAt
>>586
ライン一本を一つのクラスにして、開始座標と終了座標をクラスに保存しておけばいけるだろ。
自由線なら配列保存しておいてそっから再生成。
602 :Now_loading...774KB2011/02/01(火) 10:49:01 ID:7A9yKG0Z
どなたか教えてください

loaderで外部ドメインの画像を読み込んで、contentにアクセスすることはできないのでしょうか?
外部ドメイン側にcrossdomain.xmlが存在して、allow-access-fromも設定されていないとダメってことでしょうか?
ローカルで動かした場合、外部ドメインでもcontentにアクセスできていたのですが。。。


---以下エラーログ(一部文字化け)
エラー : http://(外部ドメイン)/shakai/images/101218/sha1012181645018-p1.jpg のリソースに対する、http://(自ドメイン)/app.swf の要求者からの要求は、ポリシーファイルのアクセス権がないため拒否されました。
*** ZLeB Sandbox ? ***
http://(外部ドメイン)/shakai/images/101218/sha1012181645018-p1.jpg ????~黷ワ - http://(自ドメイン)/app.swf ??黷ワ?
SecurityError: Error #2123: セキュリティサンドボックス侵害 : Loader.content: http://(自ドメイン)/app.swf は http://(外部ドメイン)/shakai/images/101218/sha1012181645018-p1.jpg にアクセスできません。ポリシーファイルへのアクセスも許可されていません。

---以下ポリシーファイルログ
エラー : http://(外部ドメイン)/shakai/images/101218/sha1012181645018-p1.jpg のリソースに対する、http://(自ドメイン)/app.swf の要求者からの要求は、ポリシーファイルのアクセス権がないため拒否されました。
603 :Now_loading...774KB2011/02/01(火) 11:31:12 ID:/whoLrhu
>>602
ポリシーファイルに正しく記述されていない時のエラーに見えるが。

ローカルでテストした場合と、外部に置いた場合では当然書く内容も変わると思うんだが。
605 :Now_loading...774KB2011/02/01(火) 12:00:59 ID:7A9yKG0Z
>>603-604

ご回答ありがとうございます

その後、ズバリの問題のサイトがありました

ttp://d.hatena.ne.jp/ku-KiKi/20090113/p1
>外部ドメインからロードした画像をBitmapData.drawできない罠
>phpサイトをプロキシにする事でFlashはphpサイトのcrossdomain.xmlを解釈し、その結果画像を表示する事ができるとの事です。

これで動かすことが出来ました

お時間取らせてしまいスミマセン
606 :Now_loading...774KB2011/02/01(火) 16:24:46 ID:eQwAiACS
Android用のFlashを作ってみようかと思い、とりあえずマルチタッチが
うまく機能するのかやってみたんですが、maxTouchPointsの戻り値は1
しか戻らずマルチタッチが使えません。
WebでのFlashはマルチタッチはまだ使えないのでしょうか?
それともなにか足りないでしょうか?

環境 FlashDevelop 3.3.2 RTM / Action Script 3 / flex_sdk_4.1.0.16076
Android HTC Desire II( android 2.2) / Flash 10.1.106.16

確認ソースの一部

//マルチタッチをサポートしているか
var isMultiTouchSupport:Boolean = Multitouch.supportsTouchEvents;

if (isMultiTouchSupport) {
//TouchEventかGestureEventのどちらをりようするか宣言する(必須)
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

//最大認識できるタッチポイントの数(指何本まで認識できるか?)
var maxTouchPoint:int = Multitouch.maxTouchPoints;
txt.text = "最大" + maxTouchPoint.toString() +"個のマルチタッチができます。";

}else {
txt.text = "マルチタッチがサポートされていません。";
}

607 :Now_loading...774KB2011/02/02(水) 01:44:42 ID:iRr8C/6J
>>606
Android 向けに書きだしたこと無いからわからないけど、
多分 Multitouch.inputMode を MultitouchInputMode.TOUCH_POINT にしているからだと思う。
多点検出するには MultitouchInputMode.GESTURE したらうまくいくかも。
TOUCH_POINT って定数名からして 1 点タップとかの検出水準に制限している感じがする。
608 :Now_loading...774KB2011/02/02(水) 10:25:32 ID:XnLcLJgg
MultitouchInputMode.GESTUREでもmaxTouchPointsに変化はなく1でした。

現在マルチタッチを行うWEB上のスマートフォン用のFlashを探していますが
ほとんどがAIRのアプリ物ばかりで、WEB上のFlashはみなシングルタッチ物
ばかりで…
609 :Now_loading...774KB2011/02/02(水) 10:36:20 ID:tPceh1CK
ものすごくスレ違いな気がしますが、AS2.0でTwitterの発言やら
タイムライン等を取得する方法を説明してるページってあるのでしょうか?
探してもAS3.0やAIRばっかりでさっぱり分かりません。
610 :6062011/02/02(水) 11:11:17 ID:XnLcLJgg
ではGESTUREは使えるのか?ということでやってみましたが、
GESTUREも使えないようです。 さすがにこれはおかしい。
なにか手順がたりないのか(ググるとこれだけでいけるみたい)
そもそもWEBでのFlashではマルチ、ジェスチャーはサポートできて
いないのか…

確認ソースの一部

var isGestureEvents:Boolean = Multitouch.supportsGestureEvents;
if (isGestureEvents) {
 Multitouch.inputMode = MultitouchInputMode.GESTURE;
 var supportGesture:Vector.<String> = Multitouch.supportedGestures;
 var s = "次のジェスチャーがサポートされています\n";
 for (var i:int = 0; i < supportGesture.length; i++) {
  s += "\n" + supportGesture[i];
 }
}
else {
 s = "ジェスチャーはサポートされていません。";
}
txt.text = s;
611 :6062011/02/02(水) 11:19:03 ID:XnLcLJgg
一部間違っていましたが結果は変わりませんでしたorz

Multitouch.inputMode = MultitouchInputMode.GESTURE; // 先にやらないとね
var isGestureEvents:Boolean = Multitouch.supportsGestureEvents;
if (isGestureEvents) {
612 :6062011/02/02(水) 11:44:39 ID:XnLcLJgg
答えは本家にありました。
http://www.adobe.com/jp/devnet/devices/articles/optimization_features_fp101.html

*Flash Player 10.1のマルチタッチサポートは、Androidでは利用できません。

終了します。
613 :Now_loading...774KB2011/02/02(水) 19:01:34 ID:ZD7/q7In
AS3.0です。

長方形のキービジュアルがあって、
そのキービジュアルにマウスオーバーした時に、
キービジュアルに被さるようにして右からバナーが出てきたとします。

キービジュアルからマウスアウトすると、
バナーが引っ込んでほしいのですが、

バナーの上にマウスがのっかっても引っ込んでしまいます。
(キービジュアルからマウスアウトされたと判断されてしまう)

バナーの上にカーソルがある場合は、引っ込まないで欲しいです。

こういったときって、どのように書けばよいのでしょうか?

ご存知の方いらっしゃいましたら
ご教授よろしくお願いいたします。
614 :Now_loading...774KB2011/02/03(木) 00:03:51 ID:U3qSmqjW
>>613
バナーのmouseEnabledをfalseに。
615 :Now_loading...774KB2011/02/03(木) 00:31:12 ID:+c9mHhf8
若しくはバナーをキービジュアルの子にして、mouseoverでなくrollover。
バナー移動周辺で適当にフラグ立ててもいいし、ヒットテストでも何でもいけるよ
616 :Now_loading...774KB2011/02/03(木) 11:33:00 ID:DtdHAy5F
>>614さん
ありがとうございます!
バナー自体も、マウスオーバーすると色が薄くなり、
クリックすると別URLへ飛ぶというマウスイベントが発生します。
なのでバナーのmouseEnabledをfalseに出来ないんです。

>>615さん
ありがとうございます!
キービジュアルのマウスイベントをrollOverですか?
バナーのマウスイベントをmouseOverですか?
ちょっと試してみます、ありがとうございます!
617 :Now_loading...774KB2011/02/03(木) 15:15:50 ID:0VxM8uRD
as3 というより Flash の質問になってしまうんですけど、
ライブラリに登録したビットマップをムービークリップに配置して9スケールグリッドを適用しても普通に比率が変わってしまいます。
試しにビットマップを削除して描画ツールで角丸を書くとちゃんと角の比率が固定されました。
9スケールグリッドをビットマップに適用する方法はありますか?
618 :Now_loading...774KB2011/02/03(木) 22:35:54 ID:6dfwCgmK
MC(body)にShapeオブジェクト(sh)を設置し、このshに描画させようとしています。
(AS3,FlashCS4,WinXP)

まずShapeオブジェクトを設置
var sh:Shape = new Shape();
body.addChild(sh);

そして、bodyの別の子MC0からshを参照しようと trace("sh: "+MovieClip(parent).sh);
と書くとundefinedになります。 ※兄弟の参照が出来ない。

AAで書くと下のようになります。どうしたら良いでしょうか?

      ―― sh
     |
body--|
     |
      ―― MC0
619 :Now_loading...774KB2011/02/03(木) 22:47:52 ID:vsaWs73/
yahoo!プライムディスプレイフラッシュバナーについて

主題の件ですが、フラッシュバナーで動画を流すことになりました。
今まで何度かフラッシュバナーを作ったことはあるのですが、動画を使用するのは今回が初めてです。
動画のフォーマットはFLVなのですが、ヤフーのフラッシュバナーってコンポーネントを使用しても特に問題ないのでしょうか?また、もし使用できなかった場合、みなさんはどの様にしてバナーに動画を埋め込んでいるのでしょうか?
音声有でフレームレートが18のため、タイムライン制御では難しいと考えております。
ぜひご教授お願いいたします。
620 :Now_loading...774KB2011/02/04(金) 15:53:36 ID:+pgjultp
>>619
それAcitonScriptの質問?
てかyahooにはサポート掲示板とかないの?
621 :Now_loading...774KB2011/02/04(金) 19:40:08 ID:LGUHTAk6
package for iphoneでgooglemapを表示したいと思っているのですが
どなたか実装出来た方、いらっしゃいますでしょうか。

APIを取得しswf上では普通に表示出来るのですがiphoneにデータを移したら表示出来ませんでした。
622 :5762011/02/05(土) 00:28:36 ID:q9UC88Bz
>>578 の件、まだ解決しません!
ソース載せてるんですけど、どなたか分かりませんか〜?><
623 :Now_loading...774KB2011/02/05(土) 01:48:28 ID:MbxDPXbe
as3でrootの変数を参照したいのですが、
extends Spriteしてaddchildしないといけないのでしょうか?

Objectのままのclassがrootを参照することはできないのですか?

あと何も描かれてないSpriteでも多くaddchildすると重くなるのでしょうか?
624 :Now_loading...774KB2011/02/05(土) 16:05:31 ID:veHsY6aG
>>621
iponeはflashアプリに対応していない。
どうしてもやるならiponeasが必要、

>>623
http://www.sd-lab.co.jp/blog/2009/10/15/as3-root%E3%82%84parent%E3%81%AE%E5%8F%82%E7%85%A7/
625 :Now_loading...774KB2011/02/05(土) 22:26:36 ID:5j+y5Tfh
>>623
クラス作成時にthisなりでルートのパス渡してやればいいんじゃないの。
626 :Now_loading...774KB2011/02/05(土) 23:25:13 ID:MbxDPXbe
>>625
thxそれでできました!
627 :Now_loading...774KB2011/02/06(日) 00:55:32 ID:FVjmqrhK
>>626
よかったよかった。
628 :Now_loading...774KB2011/02/06(日) 03:51:02 ID:pO1Lv7fi
任意のボタンを作成するにはどうすれば良いのでしょうか?

Spriteクラスを継承したクラスをボタンとして使おう思ったのですが、
TextFieldをaddChildして、クリックイベントをイベントハンドラに渡すと
event.targetでTextFieldを受け取ってしまいます。
自作のボタンクラスをtargetとして受け取るにはどうすれば良いのでしょうか?
dispatchEventでしょうか?これは上手くいきませんでしたが…
629 :Now_loading...774KB2011/02/06(日) 04:06:46 ID:FVjmqrhK
テキストのselectableだかをfalseにすればいいんじゃないかな。
630 :Now_loading...774KB2011/02/06(日) 04:13:46 ID:Rfr6UUl/
>>628
一旦ボタンクラスでTextFieldからのイベントを受け取って
そこからdispatchEvent(new MouseEvent(…))するとか?
引数は受け取ったイベントから持ってきて
633 :6282011/02/06(日) 12:47:19 ID:pO1Lv7fi
>>629-632
ありがとうございます!
mouseEnableをfalseで出来ました!
634 :Now_loading...774KB2011/02/06(日) 23:51:39 ID:YDV/+YQK
クラスA,B,C,Dのインスタンスをそれぞれa,b,c,dとする
a内でbを作り、b内でcを作り、c内でdを作る
d内の作業の結果d内でaのプロパティをいじりたい時はどうしたらいいでしょうか
コンストラクタにthisを次々渡していくのも階層が深くなるとわかりにくくなるし対象が複数あると面倒になります
635 :Now_loading...774KB2011/02/07(月) 00:30:31 ID:uarZDaKB
d.c.b.aみたいアクセスしたくない!っていってんだよね?

ただ、オブジェクト指向ってのはそういうもんだ。

rootParentみたいなプロパティをb,c,dにそれぞれ作って、
それぞれ、return rootParentみたいにしたら、
dでもただ、rootParentとしてアクセスするだけで
取れるようになるけどね。
636 :Now_loading...774KB2011/02/07(月) 02:06:59 ID:ql0EDlWA
ttp://www.libspark.org/wiki/QRCodeReader
こちらのライブラリを使用して、QRコードを読み取るコンテンツを作りたいと考えています。
実際にダウンロードしてみて、同梱されていたswfでは問題なく動作したのですが、
いざ自分でasファイルからパブリッシュしてみると、
読み取りに時間がかかったり、読み取っても文字化けを起こしてしまいます。
パブリッシュの仕方などに問題があるのでしょうか?よろしくお願い致します。
638 :Now_loading...774KB2011/02/07(月) 23:57:07 ID:aiS+2T7c
オブジェクトをある座標x1,y1から
別の座標x2,y2にどんな距離でも一定の早さで移動させたいのですが
その際のx yの増減値の出し方を教えてください
639 :Now_loading...774KB2011/02/08(火) 00:14:12 ID:+supy2Mq
>>638
距離/速度 を tweener にくれてやれ
640 :Now_loading...774KB2011/02/08(火) 19:49:06 ID:sMpUniCH
速度が一定なら、増減一定にすればいいし、
移動時間を一定にするなら、移動時間で距離を割ったものを増減にすればいいでしょ。
641 :Now_loading...774KB2011/02/08(火) 20:13:58 ID:yaTKVPIJ
環境:AS3

ステージ上にインスタンス複数あって、インスタンス名が

test1
test2
test3

みたいな感じであるんだけど、

それをfor文使って呼び出したい。

for(var i:1; i<5; i++){

trace(test+i.x);

}


という風に書いても、testとiを別々に認識してるっぽいんですが
どうすればよいですか?
643 :Now_loading...774KB2011/02/08(火) 21:25:54 ID:a63xbLEj
Flashで設定したインスタンス名で直接アクセスすることは出来ないから無理。
(getChildByNameとかで取り出してnemeを比較するとかで間接的には可能だけど)

配列に入れておいてアクセスのほうが現実的だし速い。
644 :Now_loading...774KB2011/02/08(火) 22:09:48 ID:yaTKVPIJ
>>643

>>Flashで設定したインスタンス名で直接アクセスすることは出来ないから無理。


あれ、無理なの?

trace(test1.x)

とかにすると、ステージ上にあるtest1のxは取得できるよね。

変数+数字


が無理ってことなのかな。
645 :6412011/02/08(火) 22:20:10 ID:yaTKVPIJ
連投でスマナイ・・・

自己解決したので記載しておきます。



for (var i=0; i<3; i++)
{

trace(this["tes"+i].x);
}

で、いけた。


【 this["tes"+i].x 】

この部分のthis後にドットを付けないとか、
ドットシンタックスの考えが緩かったみたいだ

すまん・・・
646 :Now_loading...774KB2011/02/08(火) 22:30:42 ID:a63xbLEj
うわ、その手忘れてた。
つーか、ステージ上のどこかにあるって意味でとらえていた。
そのやり方だと、直接の子しか扱えないから注意がひつようやね。
647 :Now_loading...774KB2011/02/11(金) 09:29:05 ID:FInYwohq
すみません、RTMFPでClassを送信したんですが、
送信先で強制的にObjectに変換されてしまいます。

受け手がclassの型だともちろん受け取れないし、
受け取ったObjectを普通にキャストしても変換出来ないのですが、
どうにか、元の型にキャストする方法はないですか?
もしくは、Objectに変換されない方法はないですか?

知ってたら教えてください。お願いします。
648 :Now_loading...774KB2011/02/11(金) 10:06:58 ID:+U6evdzH
そこら辺やったことないけど、registerClassAlias()とかgetClassByAlias()とか使うんじゃね?
649 :Now_loading...774KB2011/02/11(金) 17:00:08 ID:K9WN2l2i
Worldって名前のクラスを作って
new World();ってコードを書いたんだが
「引数の数が正しくありません。正しくは 2 です。」
って出るんだけど、WorldってAS3の予約語(?)だったりするの??

試しにCS5持ってる人、アクションウインドウに
とくに何も作らずにnew World();だけ書いてみ?

「未定義である可能性が高いメソッド World の呼び出しです。」
って出るはずなのに
「引数の数が正しくありません。正しくは 2 です。」
ってでるから(汗

Worldって名前を使わなければ大丈夫なんだけど
リファレンスにもWorldなんてクラス無いし、気になって眠れない!
誰か知ってる人たすけて!
650 :Now_loading...774KB2011/02/12(土) 00:07:06 ID:fc6fksb4
同じものを同じ位置大きさでaddchildしまくっても問題ないのでしょうか?
651 :Now_loading...774KB2011/02/12(土) 00:14:42 ID:fc6fksb4
650解決ゾロリ

すでにあるobjをaddchildしても数は増えないみたいですた
652 :Now_loading...774KB2011/02/12(土) 00:57:19 ID:sB+ZgICf
XMLデータを使ってBox2dに画像を読み込みたいのですが
やり方がさっぱりわかりません。
ググってもBox2dにXMLデータを読み込ませる方法が
載ってないので困っています。
誰か教えてください。
653 :Now_loading...774KB2011/02/12(土) 01:01:35 ID:sB+ZgICf
>>652ですが、
FlashのCSは4
ActionScriptは3.0
Box2DはBox2DFlashAS3_2.0.2
でやってます。
654 :Now_loading...774KB2011/02/12(土) 13:19:50 ID:2nWmwVlF
>>652-653
まずはActionScriptでB2Bodyを作ってみるべし!
話はそれからだ!
655 :Now_loading...774KB2011/02/12(土) 18:51:46 ID:sB+ZgICf
>>654
ActionScript入門wikiを読んであらかたの使い方は
よちよちながら試したんですが
XMLの読み込みだけが上手くいきません。
656 :Now_loading...774KB2011/02/12(土) 19:49:47 ID:sB+ZgICf
>>655です。
XMLの読み込み解決しました。
お騒がせしてすいませんでした。
657 :Now_loading...774KB2011/02/12(土) 20:36:06 ID:NtbZ+EDU
emacsでactionscript書こうと思って、as-config.elを探してます。
http://blog.pettomato.com/?p=22
はNotFoundになっていて入手できません。。。
他の場所にありませんでしょうか?
659 :Now_loading...774KB2011/02/13(日) 11:08:34 ID:NMhle9jq
質問させてください。
Loaderで外部画像を取得して、表示リストに追加した時、画像のサイズが大きく表示されるのですが、
どのようにすれば元のサイズで表示させられるのでしょうか?
660 :Now_loading...774KB2011/02/13(日) 15:02:17 ID:LAMVGLIb
>>659
addChildしてるオブジェクトが、拡大されてるんじゃないの?
661 :6592011/02/13(日) 15:12:53 ID:NMhle9jq
>>660
FlexBuilderでAS3プロジェクトを書きだしています。
おっしゃるとおりにhtml側でswfobject.jsにより生成される<object >タグの幅と高さをオブジェクトと同じ値にしたところ、
かなり元のサイズにちかい見栄えで表示されました。
しかし、実際に表示されている画像が数ピクセル縮小されて表示されており、シャギーが出てしまいました。
この場合何か指定が足りないのでしょうか?それともブラウザの挙動で仕方ないのでしょうか?
もう一度ご回答よろしくお願いします。
662 :Now_loading...774KB2011/02/13(日) 15:49:51 ID:w5Xo29pu
ロード完了後にLoader.content.widthとLoader.content.heightで元のサイズ取得。
663 :Now_loading...774KB2011/02/13(日) 15:52:37 ID:LAMVGLIb
普通は、100%で表示される
縮小されて見えるとすれば、swfの表示スケールやサイズか、親のDisplayObjectContainerか
Loaderか、とにかくどこかでwidthやscaleX等の変形が行われていると思うんだが
664 :6592011/02/13(日) 16:37:20 ID:NMhle9jq
>>662-663
アドバイスありがとうございます。
指摘していただいた箇所を順にチェックしたところ、
this.stage.scaleMode = StageScaleMode.NO_SCALE;
とメインクラスでステージのスケールモードを指定したことで画像が正確な大きさで表示されました。
本当はコンテンツ全体の幅を正しく取得しなければ根本的な解決にはならない気がしますが、
こちらのスキルが足りないようです。
ともかく希望の結果を得られて助かりました。ありがとうございました。
665 :Now_loading...774KB2011/02/14(月) 13:38:01 ID:QuEmHj7n
JPG外部読み込みのFLASHを作ってるのですが
縦長と横長の画像がありまして、表示される位置がバラバラになってしまうので
縦長(このピクセルサイズ)の画像の時は、ここの座標に表示する
みたいなピクセルサイズによって座標を振り分けるスクリプトを書きたいのですが、
どなたかわかりますでしょうか?
666 :Now_loading...774KB2011/02/14(月) 17:47:44 ID:gtui5z5M
>>665
自分で書いてることそのままやんw
667 :Now_loading...774KB2011/02/14(月) 18:38:43 ID:QuEmHj7n
>>666
そうでしたね。試行錯誤してなんとか解決しました。
668 :Now_loading...774KB2011/02/15(火) 04:03:18 ID:oVYptpVD
actionscript3.0 ライブラリ入門
この本を立ち読みしようと本屋に行ったら
見つけた瞬間他の人にとられた
パラパラめくってたんで十分ほど待ってたらそのままお買い上げ
嫌がらせか!
669 :Now_loading...774KB2011/02/15(火) 05:19:19 ID:sIg1VixI
AS2です。
Winアクセサリの電卓風のツールを作ったんですが、
ボタンが20個程あるため同じようなコードの繰り返しで気に入りません。
シンプルにまとめる方法はありますか?
ボタンへの個別の記述は考えておりません。
以下抜粋です。実際は20行程続いています。
h5.onRelease = function() {sbl(h,5,36e4)};
h4.onRelease = function() {sbl(h,-5,36e4);};
h1.onRelease = function() {sbl(h,1,36e4);};
m1.onRelease = function() {sbl(m,-1,6e4);};


670 :Now_loading...774KB2011/02/15(火) 12:15:36 ID:oVYptpVD
>>669
配列アクセス演算子
671 :Now_loading...774KB2011/02/16(水) 10:39:14 ID:vxx+Mb3V
AS3です。
配列に格納したインスタンスに対するマウスイベントの際、
そのインスタンスを格納している配列内での番号を取得することはできないでしょうか?

以下のような使い方をしたいと考えているのですが……


var parts:Array = new Array();

for (var i:int = 0; i < 10; i++) {
  parts[i] = new Sprite();
  //中略、四角形や円などの図形を生成

  addChild(parts[i]);
  parts[i].addEventListener(MouseEvent.CLICK, clickHandler);
}

function clickHandler(evt:MouseEvent):void {
  //ここで、クリックされたインスタンスの、配列parts内での番号を取得したい
  var clickNum:int = クリックされたインスタンスの番号;
  
  for (var i:int = 0; i < parts.length; i++) {
    if (i != clickNum) {
      //クリックされたインスタンス以外のインスタンスに任意の処理
    }
  }
}

ご存知の方、よろしくお願いします。
672 :Now_loading...774KB2011/02/16(水) 10:44:34 ID:gUcj94Ww
>>671
parts[i]に、iの値をもたせるとか
Dictionaryクラスを使うとか
673 :Now_loading...774KB2011/02/16(水) 16:51:48 ID:rLULRNIL
>>67
ver clickNum:int = parts.indexOf(evt.target as Sprite)で取れないかな
as Spriteはいらないかもしれないけど
674 :Now_loading...774KB2011/02/16(水) 16:54:56 ID:rLULRNIL
>>673は>>671宛て
675 :Now_loading...774KB2011/02/16(水) 23:41:13 ID:3TmsejAJ
はじめまして

FlashCS3を使用(AS3.0)
ActionScript勉強中の初心者です。

twitterの自分の発言をjavascriptで10秒毎に取得、
値へ受け渡し、Flashで表示といった事は可能でしょうか?

Flashで外部javascriptを呼び出し

javascriptでtwitterの発言を取得

発言を表示(これを十秒毎)

PHPとFlashを連動させてtwitterの発言を取得するという
記事はネットでみつけたのですが
javascriptで取得するというのは見つけられず…
ExternalInterfaceクラスというのを利用すれば
できそうな感じもするんですが
やはり難しいのでしょうか

ご助力お願いいたします。
676 :Now_loading...774KB2011/02/17(木) 01:24:01 ID:W2cPq96a

flash.media.Sound クラスを中に入れたクラスを作成したのですが、
クラスの外からイベントハンドラを指定する方法がわかりません。
何か実例があれば教えていただけないでしょうか。

よろしくお願いします。
677 :Now_loading...774KB2011/02/17(木) 01:29:31 ID:JK+IjSBk
>>675
twitterのAPIがどんなものか知らないけど、http〜のURLにアクセスするだけなら、
javascriptなんか使わなくてもFlashから直接たたけるよ
678 :6762011/02/17(木) 02:12:27 ID:W2cPq96a

>>676

訂正します。
flash.media.Sound クラスを中に入れたクラスを作成しようと
しているのですが、
クラスの外からイベントハンドラを指定する方法がわかりません。
何か参考になるサンプルコードがあれば教えていただけないでしょうか。

よろしくお願いします。
679 :Now_loading...774KB2011/02/17(木) 03:05:29 ID:JK+IjSBk
>>678
こういうこと?

private var s:Sound;

public function setListener(func:Function):void{
s.addEventListener( , func);
}
680 :Now_loading...774KB2011/02/17(木) 03:35:19 ID:n8Ewdaeh
TextInputtの文字サイズを変更しようと

TextInputを継承したクラスのコンストラクタで
textField.defaultTextFormat = new TextFormat("MSゴシック", 20, 0x000000, false);

と設定したけど
反映されないのですがどうしてでしょう?
681 :Now_loading...774KB2011/02/17(木) 12:33:48 ID:p8eniCGl
flash IDE上のプレイヤーが10.2に更新されないのですが、ひたすらアップデートを待つしか方法はないのでしょうか??
682 :Now_loading...774KB2011/02/17(木) 16:48:34 ID:HT1Gjips
>>680
> textField.defaultTextFormat = new TextFormat("MSゴシック", 20, 0x000000, false);

継承したクラスならthis.defaultTextFormatていいんじゃないのかな
683 :Now_loading...774KB2011/02/17(木) 19:59:58 ID:EFWEKAaX
AS3、FlashCS3です。
重い関数をfor文を使って10000回くらい回しているのですが、タイムアウトエラーが出ます。
ググると、処理を分割すればよい、と書いてありましたが、どのように分割すればよいのでしょうか。
よろしくお願いします。
685 :Now_loading...774KB2011/02/18(金) 00:32:37 ID:dyX/Oz0L
>>677
遅レスになってしまってすいません。
ありがとうございます。

ぐぐると、
Flashが直接apiにアクセスできないという記事を見かけたので
てっきりできないものかと…

ただ、参考になりそうなページを見つけたので
なんとか取得できるよう頑張ってみます。
686 :Now_loading...774KB2011/02/18(金) 14:50:29 ID:NNEukscE
AS3ですがムービークリップの
3D回転の設定方法は分かったのですが
3d中心点の設定方法が分かりません

分かる方いらっしゃいましたら教えてもらえないでしょうか
688 :Now_loading...774KB2011/02/19(土) 11:09:44 ID:5qRuG8DQ
個人の自由なんだろうけど命名規則ってどうしてますか?

とくにアンダースコアを変関数名の前に置いたり置かなかったりする人がいて気持ち悪いです。
引数、ローカル変数にはアンダースコアつけるとかそういう使い方なんでしょうか?

あとgoToAndPlay
go_to_and_playとか
689 :Now_loading...774KB2011/02/19(土) 12:34:11 ID:NFbj/i98
俺はJavaの命名規則を使ってる。

>引数、ローカル変数にはアンダースコアつけるとかそういう使い方なんでしょうか?
人それぞれだからよくわからんが、
俺はクラスのprivate変数を_ではじめるようにしてる。
こうすると、たとえば下のようなクラスがあるとすると、
class A {
 private var _x;
 private var _y;
 public function setPosition( x:Number, y:Number ){
  _x = x;
  _y = y;
 }
}
ってかける。thisを省略してもわかりやすいようにしてるだけ。
引数には使わないようにしていた方が良いと思う。
690 :Now_loading...774KB2011/02/19(土) 12:50:16 ID:5qRuG8DQ
>>689
ありがとう。参考にします
たしかにprivateなら外部からhoge._xとよばされることもないしいいね。
691 :Now_loading...774KB2011/02/19(土) 12:56:48 ID:RfKgDC1e
そうそう。
外から呼ばれるor呼びたいってなれば、
public function get x():void {
 return _x;
}
ってすればいいし。setterも同じ。
ちゃんとオブジェクト指向してる感じになって、
精神衛生上よろしい。
692 :Now_loading...774KB2011/02/19(土) 13:57:07 ID:l78mTGN/
>>688
ttp://opensource.adobe.com/wiki/display/flexsdk/Coding+Conventions-ja
ここにAdobe公式のコーディング規約があるから参考にどうぞ
693 :Now_loading...774KB2011/02/19(土) 14:50:57 ID:NBQujj4h
すみません、初心者なんですが質問させて下さい。
Mac OSX 10.6 Flash CS5 AS3.0です。
一度投稿しようとしたら改行が多すぎるとエラーが出たので、2分割して連続投稿させて下さい。

ステージ上に配置したMCを、同じステージ上に配置したボタンをクリックする事で横スクロールさせて
画面サイズより大きいMCがウィンドウ内で動いてページ移動するみたいにしたいです。

そこで、動くMCをcontents_mcとして、そのMCの1フレーム目で現在の座標nowXをENTER_FRAMEで常に取得させ
メインタイムラインのボタンによって指定される変数targetXと比較して、差があれば動くようにしようと思い
contents_mcの1フレーム目に以下のように書きました。

addEventListener(Event.ENTER_FRAME, xScroll);
function xScroll(eventObject:Event):void {
var targetX;
var nowX = this.x;
var distX = targetX-nowX;
var moveX = distX/3.2;
if (distX <= 0.5 && distX >= -0.5) {
this.x = targetX;
} else {
this.x += moveX;
}
}
続く
694 :Now_loading...774KB2011/02/19(土) 14:53:30 ID:NBQujj4h
>>693の続きです

上記のメインタイムラインのボタンクリックでcontents_mcの中のtargetXに値を指定してみました。

btn.addEventListener(MouseEvent.CLICK, setTarget);
function setTarget(event:MouseEvent):void {
Object(this).contents.targetX = 500;
}

これでMC内で自動(?)で数値の差を検出してスクロールしてくれると思ったのですが、全く動きません。
AS2.0までのイメージだとこれで動きそうだと思ったのですが、何がいけないのか分かりません。
漠然とした質問で恐縮ですが、どなたか分かる方、ご教授ください。
よろしくおねがいします。
695 :Now_loading...774KB2011/02/19(土) 15:16:30 ID:5AifAcMJ
>>694
仕組みが適切かはおいといて

xScrollのtargetXってローカル変数じゃない?
696 :Now_loading...774KB2011/02/19(土) 16:33:38 ID:NBQujj4h
ご指摘ありがとうございます!
恥ずかしすぎる見落としでした。targetXの宣言をfunctionの外に出したら動きました!
本当にありがとうございます。

もう一つお聞きしたいのですが、こういったケースではどういう仕組みが一般的なのでしょうか?
動かす為に常時位置を比較するのは負荷的に良くはないとは思うのですが・・・
クリックイベントが起きた時だけenterFrameで動かすという感じなのでしょうか?
もし良ければ教えて下さい。
697 :Now_loading...774KB2011/02/19(土) 17:04:27 ID:seAIzfO1
クリックした時だけ動くってなら、CLICKイベントでaddEventListener(Event.ENTER_FRAME, xScroll)して
目標の位置まで動いたらremoveEventListenerするとか?
大した負荷ではないとは思うが、ずっとxScroll呼び出し続けるってのは好きじゃないな、自分は

この場合addEventListenerの前に無駄でもremoveEventListenerしておかないと
動いてる時にクリックされた場合におかしくなるだろうけど
698 :Now_loading...774KB2011/02/19(土) 17:55:42 ID:M9rXan+A
あー。ちょっとずつ動かしたいからENTER_FRAMEは必須なのか
じゃあ俺もずっと監視したくないからクリックでaddEventListenerで着いたらremoveEventListenerかな
Tweenerって中どうなってんだろ。
699 :Now_loading...774KB2011/02/19(土) 18:14:22 ID:NBQujj4h
どうもありがとうございます。
動き終わったらremoveEventListener、そういう手があったんですね。
イメージ通りです。
まったく分からず申し訳ないのですが、想像で書いてみました。
contents_mcの1フレーム目です。

var targetX;
addEventListener(MouseEvent.CLICK, xScroll);
function xScroll(event:MouseEvent):void {
addEventListener(Event.ENTER_FRAME, xMove); //ここで入れ子にする感じ
function xMove(eventObject:Event):void {
var nowX = this.x;
var distX = targetX-nowX;
var setP = distX/3.2;
if (distX <= 0.5 && distX >= -0.5) {
this.x = targetX;
this.removeEventListener(Event.ENTER_FRAME, xMove); //removeのイメージ
} else {
this.x += setP;
}
}
}

こんな感じで入れ子にするということですか?
理解が出来ていなくて申し訳ない気分ですが、宜しくお願いします。
700 :Now_loading...774KB2011/02/19(土) 18:30:28 ID:seAIzfO1
>>699
いや、setTargetで
removeEventListener(Event.ENTER_FRAME, xScroll);
addEventListener(Event.ENTER_FRAME, xScroll);
と書いて、 xScrollで

if (distX <= 0.5 && distX >= -0.5){

 this.x = targetX;
} else {
 this.x += moveX;
}

こんな感じ

マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006
マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006