0

独学でフラッシュを学び始めたばかりで、クールな小さな画像ギャラリー (家族のアルバムのようなもの) を作成することにしました。ムービーをテストすると、最初の画像が中央に読み込まれます。画像の下には小さなサムネイル サイズのボタンがあり、クリックすると画像が中央に読み込まれます。たくさんの写真を組み込む予定なので、スライダー (左から右) を使用して、写真を前後にスクロールして、クリックして表示したい写真を見つけることができるようにします。

私は Action-script の経験がないので、誰かが私にそのプロセスを始めさせ、スライダーがどのように機能するかを説明してくれることを望んでいました.

ありがとう!

4

2 に答える 2

1

独自のスライダーを簡単に作成し、進行中の何かを学ぶことができます:)。

スライダー内-ノブの移動は、ギャラリーのサイズがスライダーのサイズに変換されるギャラリーの移動に対応している必要があります。基本的にはそれだけです。したがって、いくつかの数式と基本的な要素が必要になります。

gallery.width / slider.width-ギャラリーがスライダーよりも広いかどうかを判断するには(スライドを続行する場合)、この比率を使用してノブのサイズを判断することもできます。したがって、ギャラリーがスライダーよりも小さい場合は、スライダーをレンダリングしたり、ノブをスライダーのサイズにしたりできないため、移動できません。または、ノブをギャラリーのオーバーフローのサイズに比例したサイズにします。ここで書いているすべてのものを試してみてください。

これらの要素も使用する必要があります。

  1. ギャラリー(表示オブジェクト)、
  2. ギャラリー(ギャラリーの表示部分)のマスク/コンテナ、
  3. スライダー、
  4. つまみ。
  5. 長方形オブジェクト

ギャラリーは、子としてすべての画像を含む単なる表示オブジェクトになります。

マスク/コンテナは、ギャラリーの一部が表示される領域の境界を提供する表示オブジェクトになります

スライダー-任意のスプライト

ノブ-任意のスプライト

Rectangle-はもちろんRectangleオブジェクトであり、slider.widthの幅-nob.width、高さは0なので、次の関数を使用して、スライダーの外側に出ることなく、ノブをスライダーに沿ってドラッグできます。

knob.startDrag(false, rect); // Use it at MouseEvent.MOUSE_DOWN of knob

knob.stopDrag() // Use it at MouseEvent.MOUSE_OUT of knob

次のコードで長方形を作成できます。

new Rectangle(0, knob.x, slider.width - knob.width, 0);

そして、ノブの移動をギャラリーの移動に変換する必要があります。これは次のようになります。

// When moving knob you can use this formula:
gallery.x = knob.y / (slider.width - knob.width) * (gallery.width - mask.width); // Use it at MouseEvent.MOUSE_MOVE of knob

そうだと思いますが、先ほど書いた図​​書館を元に頭のてっぺんから書いたので、何か問題があったら教えてください。でもそれが基本だと思います。

于 2013-03-10T00:25:39.900 に答える
0

ScrollPaneをご覧ください
。サムネイルをコンテナに追加し、それをScrollpaneのソースとして使用すると、スクロールが処理されます。

于 2013-03-09T23:13:52.523 に答える