Actionscript 3 AS3呼叫一个孩子';在每个
我有一个函数,它使用鼠标单击事件在鼠标坐标处创建符号的子对象。然后将实例推送到一个数组中 我现在正在尝试创建一个新功能,允许您在鼠标距离孩子10像素以内时拖放孩子。放置子对象时,我希望它旋转以面向阵列中的下一个子对象。我目前正在使用Actionscript 3 AS3呼叫一个孩子';在每个,actionscript-3,for-loop,parent-child,Actionscript 3,For Loop,Parent Child,我有一个函数,它使用鼠标单击事件在鼠标坐标处创建符号的子对象。然后将实例推送到一个数组中 我现在正在尝试创建一个新功能,允许您在鼠标距离孩子10像素以内时拖放孩子。放置子对象时,我希望它旋转以面向阵列中的下一个子对象。我目前正在使用for each循环与阵列中的每个子级进行通信 我遇到的问题是获取要删除的子项的索引值并将其设置为变量 作为参考,ins\u trailPoint是创建子元素的变量,tPoint是包含子元素的数组的名称child是试图获取被删除子项的索引值的变量 function m
for each
循环与阵列中的每个子级进行通信
我遇到的问题是获取要删除的子项的索引值并将其设置为变量
作为参考,ins\u trailPoint
是创建子元素的变量,tPoint
是包含子元素的数组的名称child
是试图获取被删除子项的索引值的变量
function movePoint(Event:MouseEvent):void {
for each (var ins_trailPoint in tPoint) {
var child:int = event.target.parent.getChildIndex(event.target);
var px:Number = mouseX - ins_trailPoint.x;
var py:Number = mouseY - ins_trailPoint.y;
var dist = Math.sqrt(px*px + py*py);
if (dist<10) {
stage.removeEventListener(MouseEvent.CLICK, addPoint);
stage.addEventListener(MouseEvent.MOUSE_UP, dropPoint);
ins_trailPoint.startDrag();
function dropPoint(event:MouseEvent):void {
ins_trailPoint.stopDrag();
var dx:Number = tPoint[child+1].x - ins_trailPoint.x;
var dy:Number = tPoint[child+1].y - ins_trailPoint.y;
var radians:Number = Math.atan2(dy,dx);
ins_trailPoint.rotation = radians * 180/Math.PI;
函数movePoint(事件:MouseEvent):void{
对于每个(tPoint中的var ins_跟踪点){
var child:int=event.target.parent.getChildIndex(event.target);
var px:Number=mouseX-ins_trailPoint.x;
变量py:Number=mouseY-ins\u trailPoint.y;
var dist=数学sqrt(px*px+py*py);
如果(dist调用movePoint()
的参数Event
时使用大写字母,但您尝试使用Event
小写。我更改了代码的缩进,但现在看起来很奇怪,因为dropPoint()是在movePoint()中定义的。这是您想要的还是缺少代码的一部分(大括号从不闭合)?t点索引of(ins_trailPoint)