1

子ムービークリップではなく親ムービークリップを変換する方法について質問があります...画像ローダーといくつかのハンドルをムービークリップとして保持するムービークリップがあります。ハンドル ムービークリップは、マウス イベントをリッスンして、親ムービークリップの回転と移動をスケーリングする関数を実行するために使用されます。ムービークリップをスケーリングまたは回転すると、親ムービークリップが回転している間に親ムービークリップを追跡したいが、ハンドルもスケーリングしたくないが、ハンドルも回転およびスケーリングするときの問題。

ハンドルがスケーリングしないようにする方法はありますか。

ありがとうございました

4

5 に答える 5

4

これを試して:

inside_mc.addEventListener(Event.ENTER_FRAME, function(){
    inside_mc.scaleX = 1/inside_mc.parent.scaleX;
    inside_mc.scaleY = 1/inside_mc.parent.scaleY;
});
于 2009-07-14T06:10:40.093 に答える
3

あなたがその構造に固執していないなら、私は物事を再配置するだけです. たとえば、次のようにビルドします。

- container
    - handles
    - image loader

この方法では、スケーリングの問題に対処するのではなく、ハンドルを正しい場所に配置することだけを心配する必要があります。

同じ構造を維持する必要がある場合は、ハンドルのスケールを親のスケールの逆になるように設定する必要があります。たとえば、親のスケールが 2 の場合、ハンドルのスケールを 0.5 にする必要があります。したがって、ハンドルのスケールを計算するには、1 を親のスケールで割るだけです。

于 2009-07-02T06:07:23.560 に答える
0

あなたが説明したことはそれを行うためのより複雑な方法であり、それは正確にサイズ変更/再配置せず、より多くのCPUを消費します。それを行う最良の方法(私が寝ている間に私に来た)は、新しい子を作成し、それをbackgroundMC(名前は明確にする必要があります)と呼び、親ではなくbackgroundMCのサイズを変更することです。親は自動的にそのサイズにサイズ変更されますが、子ウィンドウは拡大縮小されません

于 2010-12-13T21:38:47.977 に答える
0

onEnterFrame ハンドラなどで、scaleX と scaleY を 1/(parent.scaleX) と 1/(parent.scaleY) に設定します。

于 2009-07-12T11:06:46.390 に答える
0
  1. set height親 MC のand関数をオーバーライドします ( andも同様set widthに実行できます)。scaleXscaleY
  2. オーバーライドされた関数で、super を呼び出して値を設定し、scaleX/scaleY を確認します。
  3. 子 MC の (幅用) または (高さ用) を(scaleX )scaleY または1./scaleX (1./scaleY さ)に設定します

それは簡単でした。

于 2009-07-02T19:16:07.047 に答える