- 締切済み
startDrag について
下のようなPHPとMingでフラッシュを作っているのですが、 円の中でマウスをクリックしてクリックしたままマウスを動かすとマウスの動きに沿って円も動き マウスを離すと動いていた円が動かなくなるように new SWFAction の部分を変更したいのですが よくわかりません、どなたか教えてもらえませんでしょうか。 <?php $movie = new SWFMovie(); $movie->setDimension(400,400); $movie->setBackground(0,0,0); $movie->setRate(12); $is->shape = new SWFShape(); $is->shape->setRightFill(255,0,255); $is->shape->drawCircle(100); $is->sprite = new SWFSprite(); $is->controller = $is->sprite->add($is->shape); $is->controller->setName("primitive"); $is->controller->moveTo(100,100); $is->sprite->add( new SWFAction( " primitive.onPress=function(){ this.startDrag(true);}; primitive.onRelease=function(){ stopDrag();};" )); $is->sprite->nextFrame(); $movie->add($is->sprite); $movie->nextFrame(); $movie->save("moss.swf"); ?>
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- BlurFiltan
- ベストアンサー率91% (1611/1754)
私は PHP も Ming もわかりませんが, なんとなく思うんですが ActionScript 2.0 と 3.0 が混在していませんか? sprite は ActionScript 3.0 にしか存在しないもので, onPress は ActionScript 2.0 以下にしか存在ないと思います。 PHP も Ming もわからないので何とも言えません。 その世界では sprite と onPress が共存できるのかもしれません。 さて,ActionScript 3.0 の件は置いておいて, ご質問の件(日本語部分)だと,根本的に startDrag を使うのがおかしいと思います。 Math.atan2 などを使用することによって 円の中心(円の基準点)からマウス方向の角度を出して, その角度になるように円の_rotationプロパティを変えるような必要があると思います。
お礼
ありがとうございます