您的位置:首页 > 其它

品德项目需求解决方法

2016-07-11 14:55 225 查看
品德项目需求:

1、所有按钮均可拖动

2、拖动进入框中之后需要逐行显示所拖入按钮对应的实际内容

var flag = 0;
var pic_name;

var pic_x;
var pic_y;
//只需要改数组"word",需要拖动图片命名为pic0-100,列表清单命名list,列表上的字命名为zi0-100;
var word:Array=["笔","笔记本","削笔刀","橡皮","酱油","食用油","食用盐","纸巾","牙刷","牙膏","水杯","大米","水果","饮料","奶制品","饼干","蔬菜"];

for(var k=0;k<word.length;k++)
{
removeChild(this["zi"+k]);
}

function bird(e):void //将鼠标位置设置为图片位置,实现拖动功能
{
this[""+pic_name].x=mouseX;
this[""+pic_name].y=mouseY;
}

for(var i=0;i<word.length;i++)
{
this["pic"+i].addEventListener(MouseEvent.MOUSE_DOWN ,down1);
}
function down1(e):void{

for(var i=0;i<word.length;i++)
{
this["pic"+i].addEventListener(MouseEvent.MOUSE_MOVE ,bird);//为所有按钮添加鼠标移动监听事件
}

pic_name=e.target.name;
trace("biaohao=="+pic_name.charAt(3)+pic_name.charAt(4));
pic_x=this[""+pic_name].x;
pic_y=this[""+pic_name].y;
}

for(var j=0;j<word.length;j++)
{
this["pic"+j].addEventListener(MouseEvent.MOUSE_UP,down2);
}
function down2(e):void
{
trace("退出")
if(list.hitTestObject(this[""+pic_name]))//碰撞检测
{
trace("contains");
stage.addChild(this["zi"+flag]);

this["zi"+flag].text=word[pic_name.charAt(3)+pic_name.charAt(4)];//获取图片属性名的第3和第4个位置的字符,正好是数组word的下标

for(var i=0;i<word.length;i++)
{
this["pic"+i].removeEventListener(MouseEvent.MOUSE_MOVE,bird);
}
this[""+pic_name].visible = false;
flag++;
}
else{
for(var j=0;j<word.length;j++)
{
this["pic"+j].removeEventListener(MouseEvent.MOUSE_MOVE,bird);
}

this[""+pic_name].x=pic_x;
this[""+pic_name].y=pic_y;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  as3.0 flash 游戏