请问一下关于做一个清除flash连线按钮问题
时间:2011-10-05
来源:互联网
做了一个任意连线的flash,代码如下:
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);
}
}
}这个时候,如果我需要做一个按钮,其功能是按一下就会清除了任意连线的线条,可以重新再连线,那么这个按钮的代码应该怎么写呢?
高手帮忙一下~拜托了!!!
引用:
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,代码如下
附件

2011-10-5 21:10, 下载次数: 1
作者: flash023 发布时间: 2011-10-05
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28