+ -
当前位置:首页 → 问答吧 → 请问一下关于做一个清除flash连线按钮问题

请问一下关于做一个清除flash连线按钮问题

时间:2011-10-05

来源:互联网

做了一个任意连线的flash,代码如下:
引用:
var ping_array:Array = new Array();
var v_array:Array = new Array();
var start_btn:MovieClip;
var d:Number = new Number();
for (var p:Number = 1; p<=5; p++) {
       ping_array.push(this["bai"+p+"_btn"]);
       v_array.push(this["an"+p+"_btn"]);
}
for (p=5; p>0; p--) {
       this["an"+p+"_btn"].ping = ping_array.slice(0);
       this["bai"+p+"_btn"].ping = v_array.slice(0);
       this["an"+p+"_btn"].onRelease = this["bai"+p+"_btn"].onRelease=function () {
              if (!start_btn) {
                     start_btn = this;
              } else if (check_func(this)) {
                     drawLine(this);
                     start_btn = undefined;
              } else if (this._name.indexOf(start_btn._name.substr(0, 2)) != -1) {
                     start_btn = this;
              }
       };
}
function drawLine(_btn:MovieClip) {
       var _mc:MovieClip = this.createEmptyMovieClip("line_mc"+d, d++);
       _mc.lineStyle(1, int(Math.random()*0xffffff));
       _mc.moveTo(start_btn._x, start_btn._y);
       _mc.lineTo(_btn._x, _btn._y);
}
function check_func(_btn:MovieClip):Boolean {
       for (var _p in start_btn.ping) {
              if (_btn == start_btn.ping[_p]) {
                     start_btn.ping.splice(_p, 1);
                     delete_func(_btn);
                     return true;
              }
       }
       return false;
}
function delete_func(_btn:MovieClip) {
       for (var _p in _btn.ping) {
              if (_btn.ping[_p] == start_btn) {
                     _btn.ping.splice(_p, 1);
              }
       }
}
这个时候,如果我需要做一个按钮,其功能是按一下就会清除了任意连线的线条,可以重新再连线,那么这个按钮的代码应该怎么写呢?
高手帮忙一下~拜托了!!!

作者: lbjmn   发布时间: 2011-10-05

引用:
原帖由 lbjmn 于 2011-10-5 10:42 发表
做了一个任意连线的flash,代码如下
真的做了?  文件在哪里 ?   这代码怎么和我以前回复别人的帖子发的示例文件中的代码一字不差?

附件

线.rar (223.37 KB)

2011-10-5 21:10, 下载次数: 1

作者: flash023   发布时间: 2011-10-05