• 締切済み

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"); ?>

みんなの回答

  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

私は 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プロパティを変えるような必要があると思います。

basi999
質問者

お礼

ありがとうございます