用动态加载的影片剪辑滚动区域

我正在构建一个Flash项目,它为菜单项本身创建一个带动态加载的影片剪辑的菜单系统。

我想要一个滚动条出现一旦菜单有足够的项目,它比菜单区域大。

我在想,我可以在菜单区域放上一个遮罩,并将影片剪辑放在装入的控件在遮罩内上下滚动,但动态加载的影片剪辑似乎不会出现在遮罩中。

我已经在互联网上搜索了这一点,但是我可以找到的所有滚动条教程都处理文本区域,而不是使用动态加载的影片剪辑区域。

有没有人知道一个很好的教程,或有一个优雅的方式做这个建议,所以我不必做一堆数学黑客使它工作?

谢谢


不确定你到底是什么。

我只是用Flash CS3 / AS3做了一个快速测试,并且获得了加载的项目以在面罩(滚动框的底部)内移动。

首先,我创建了一个遮罩层,然后创建了一个新层作为遮罩的子项。 我向Mask层子添加了一个新的空MovieClip。 我将这个MovieClip命名为“mcItems”。

然后我附加了下面的框架脚本(当然使用类是更可取的)。

    for (var i:Number=0; i < 3; ++i)
    {
        var loader:Loader = new Loader();
        loader.load(new URLRequest('Content.swf'));
        mcItems.addChild(loader);
        loader.x = i * 120;
    };
    function update (event:Event)
    {
        mcItems.x = 120*Math.sin(getTimer()/500) - 60;
    };
    addEventListener(Event.ENTER_FRAME, update);

现在,Content.swf只是一个120x120像素的灰色框。 我的面具是240x120。 执行后,将加载3个Content.swf框,并按预期在屏蔽区域内滑动。

至于滚动条代码,我不确定'数学黑客'是什么意思,但基本原则是你正在从一套单位转换为另一套。 你正在将你的“掩码宽度/加载单元总数”转换为你的“滚动宽度/滚动条宽度”单位。

我建议查看适当的手册页面,以澄清上面使用的代码。

问候,乔丹。

链接地址: http://www.djcxy.com/p/17757.html

上一篇: Scroll area with dynamically loaded movie clips

下一篇: Updating Adobe Flash Pro CS6 to the latest Flash Player 23?