ZBLOG

var imageArray:Array = []; for (var i:int = 0; i < 10; i++) { var img_mc:MovieClip = new Image(); // 这里使用自己定义的 Image 类来创建新图像 addChild(img_mc); img_mc.x = Math.random() * stage.stageWidth; img_mc.y = Math.random() * stage.stageHeig

好的,以下是可以实现删除图片功能的代码(AS2):

首先,你需要有一个包含所有图片对象的数组 imageArray。在这个数组中添加每一个新创建的图片对象。

var imageArray:Array = [];

for (var i:Number = 0; i < 10; i++) {
    var img_mc:MovieClip = attachMovie("Image", "img"+i, getNextHighestDepth()); // 这里使用自己定义的 Image 类来创建新图像
    img_mc._x = Math.random() * Stage.width;
    img_mc._y = Math.random() * Stage.height;

    imageArray.push(img_mc); // 将新创建的图像对象添加到数组中

    img_mc.onPress = function() {
        if (Key.isDown(Key.CONTROL)) { // 判断是否按下 Ctrl 键
            var targetImg:MovieClip = this;
            var index:Number = imageArray.indexOf(targetImg);

            removeMovieClip(targetImg);
            imageArray.splice(index, 1); // 从数组中删除当前图像对象
        }
    };
}

上述代码会生成10个随机位置的 Image 对象,并将它们添加到舞台上。当用户按下并拖动其中任意一个图像时,会判断是否同时按下了 Ctrl 键。如果是,则从舞台上移除该图像,并从 imageArray 数组中删除该图像。

需要注意的是,在 AS2 中不能直接使用 removeChild() 方法来删除 MovieClip 对象。正确方式是使用 removeMovieClip() 方法来将其从父容器中移除。此外,AS2 中也没有 MouseEvent 类,而是使用 MovieClip 上的 onPress 事件来监听鼠标点击事件。同时按下 Ctrl 键可以通过 Key.isDown(Key.CONTROL) 来判断。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=2605

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?