QT开发中文网

var copiedClip:MovieClip = null; // 用于存储被复制的影片剪辑 var originalClip:MovieClip = null; // 用于存储原始影片剪辑 // 循环遍历9个影片剪辑 for (var i = 1; i

为了让这段代码在AS2中运行,需要对其中一些语法进行修改。以下是AS2版本的代码:

var copiedClip:MovieClip = null; // 用于存储被复制的影片剪辑
var originalClip:MovieClip = null; // 用于存储原始影片剪辑

// 循环遍历9个影片剪辑
for (var i = 1; i <= 9; i++) {
    var clip:MovieClip = this["tu" + i];
  
    // 设置鼠标左键按下事件处理程序
    clip.onPress = function() {
        if (copiedClip == null) {
            originalClip = this;
            copiedClip = this.duplicateMovieClip("copy", this.getNextHighestDepth()); // 复制当前影片剪辑
            copiedClip.startDrag(); // 开始拖动
      
            // 设置全局onMouseMove事件处理程序,跟随鼠标移动
            _root.onMouseMove = function() {
                if (copiedClip != null) {
                    copiedClip._x = _root._xmouse;
                    copiedClip._y = _root._ymouse;
                }
            };
        }
    };
  
    // 设置鼠标右键按下事件处理程序
    clip.onMouseDown = function() {
        if (copiedClip != null && this != originalClip) { // 如果当前有已复制的影片剪辑且不是原始影片剪辑
            copiedClip.removeMovieClip(); // 删除已复制的影片剪辑
            copiedClip = null;
        } else if (copiedClip == null && this == originalClip) { // 如果当前没有已复制的影片剪辑且是原始影片剪辑
            originalClip.removeMovieClip(); // 删除原始影片剪辑
        }
    };
}

// 设置全局onMouseUp事件处理程序,停止拖动并放置复制后的图片
_global.onMouseUp = function() {
    if (copiedClip != null) {
        copiedClip.stopDrag(); // 停止拖动
    
        // 恢复全局onMouseMove事件处理程序为null
        _root.onMouseMove = null;
    
        // 将复制后的图片放置在当前鼠标位置,并清除对被复制的影片剪辑和原始影片剪辑的引用
        copiedClip._x = _root._xmouse;
        copiedClip._y = _root._ymouse;
        copiedClip.removeMovieClip();
        originalClip = null;
    }
};

我已经修改了语法错误和一些AS3特有的方法。请尝试将这段代码放入一个AS2 Flash文件中运行,它应该能够正常工作。注意,如果你需要在ActionScript 3.0项目中使用这段代码,则需要进行更多修改。

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

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

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

联系我们

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

微信号:3007537140

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

关注我们
x

注册

已经有帐号?