我刚开始自学flash,我决定制作一个很酷的小图片库(有点像家庭相册)。当我测试电影时,第一张图片加载在中心。图像下方是缩略图大小的小按钮,可以单击这些按钮,图像将加载到中心。因为我要合并很多照片,所以我想使用滑块(从左到右),这样我就可以在照片中来回滚动并找到我想要点击显示的照片。
由于我没有使用 Action-script 的经验,我希望有人能让我开始这个过程,并解释一下 Slider 是如何工作的。
谢谢!
我刚开始自学flash,我决定制作一个很酷的小图片库(有点像家庭相册)。当我测试电影时,第一张图片加载在中心。图像下方是缩略图大小的小按钮,可以单击这些按钮,图像将加载到中心。因为我要合并很多照片,所以我想使用滑块(从左到右),这样我就可以在照片中来回滚动并找到我想要点击显示的照片。
由于我没有使用 Action-script 的经验,我希望有人能让我开始这个过程,并解释一下 Slider 是如何工作的。
谢谢!
您可以轻松创建自己的滑块,并在过程中学习一些东西:)。
在滑块中 - 旋钮的移动,必须对应于画廊的移动,其中画廊的大小被转换为滑块的大小。基本上就是这样。所以你需要一些数学公式和基本元素:
gallery.width/slider.width - 确定画廊是否比滑块宽(因此您希望继续滑动),您还可以使用此比例来确定旋钮的大小。因此,如果画廊小于滑块 - 那么您可能不会渲染滑块,或者将旋钮设置为滑块的大小,因此它是不可移动的。或者使旋钮的大小与画廊溢出的大小成比例 - 只需尝试我在这里写的所有内容。
您还需要使用这些元素:
Gallery 将只是一个显示对象,其中包含所有图像作为子项。
掩码/容器将是显示对象,它将提供部分画廊可见的区域边界
滑块 - 任何 Sprite
旋钮 - 任何 Sprite
矩形 - 当然是矩形对象,宽度为slider.width - 旋钮.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
我认为应该是这样,我是根据我前一段时间写的一些库从头顶写的,所以如果你遇到任何问题,请告诉我,但我认为这些都是你需要的基础知识。
看看ScrollPane
将缩略图添加到容器中,并将其用作 Scrollpane 的源,滚动将得到处理