dポイントプレゼントキャンペーン実施中!

400px×300pxのステージ上に1600px×1400pxをMCを配置し、そのMCをstartDragで動かそうと思っています。
実行したときに表示される400px×300pxの範囲内で、MCの右端や上端等までドラッグしたときにそれ以上はいかないようにしたいのですが、startDrag(false,left,top,right,bottom);の左上右下のパラメータ設定だけでできるのでしょうか?
いくつか考えられる数字の組み合わせを設定して試したのですが、うまく動いてくれません。おそらく「何に対するleft,top,right,bottom」なのかという理解ができていないと思うのですが、上記のサイズ場場合、どのように設定すると意図したとおりになるでしょうか?
また、他の方法でないとできないのであればその方法のヒントをいただければ幸いです。
よろしくお願い申し上げます。

A 回答 (2件)

#1です。



ステージの基準は左上のコーナーが(0 , 0)です。
その(0 , 0)から考えて,ムービークリップの基準点の座標を範囲指定してやればいいのですから,
次のような感じでできると思います↓。

on (press) {
// 左限界はステージの幅から自分自身の幅の半分
hidari = Stage.width-this._width/2;
// 上限界はステージ高さから自分自身の高さの半分
ue = Stage.height-this._height/2;
// 右限界は自分自身の幅の半分
migi = this._width/2;
// 下限界は自分自身の高さの半分
sita = this._height/2;
this.startDrag(false, hidari, ue, migi, sita);
}
on (release, releaseOutside) {
this.stopDrag();
}
    • good
    • 0
この回答へのお礼

ありがとうございました。
バッチリできました。

お礼日時:2007/08/02 11:02

> おそらく「何に対するleft,top,right,bottom」という理解が


> できていないと思うのですが、

なんとなく,それは違う気がします。
基準点を理解していないのではないかと思います。
1600px×1400px の MC の基準点はどこにあるでしょうか。
それがわからないと,誰もが left,top,right,bottom の指定の仕方がわかりません。

インスタンスの基準点
http://homepage3.nifty.com/ginga-b/MX/inst_refpo …

また,その基準点もデフォルトでは親階層内の座標になりますから,1600px×1400px の MC の階層によっても回答は変わる場合があります。

ターゲットパス
http://homepage3.nifty.com/ginga-b/MX/targetpath …
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
MCの基準点は1600px×1400pxのちょうど中央に設定してあります。
MCをおいてある階層は、シーン1の最初のフレームにおいてあるので、(おそらく)root直下ということになります。
このような状況でどうでしょうか?

お礼日時:2007/08/01 20:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!