flash 怎么让元件2拖拽的时候让元件1跟着拖动并且拖动时元件1的位置与元件2里的b元件的位置相同
拖拽时元件1和元件2里面的b元件位置是相同的,即重叠在一起,a和b是元件2里面的元件来的。麻烦的大神写个代码来看看~~我写了c._x=ab.b._x;c._y=ab.b....
拖拽时元件1和元件2里面的b元件位置是相同的,即重叠在一起,a和b是元件2里面的元件来的。
麻烦的大神写个代码来看看~~我写了
c._x=ab.b._x;
c._y=ab.b._y;不行,求帮忙 展开
麻烦的大神写个代码来看看~~我写了
c._x=ab.b._x;
c._y=ab.b._y;不行,求帮忙 展开
1个回答
展开全部
您好,在实现这个功能前,您需要先了解flash中元件在舞台上的坐标概念;
如您图中所示,元件1和元件2是同在一个场景中的,也就是说他们所在的坐标系是相同的;
而元件2中的方块a和方块b,他们所在的坐标系是元件2自己的坐标系,当您拖拽元件2的时候,元件2的坐标发生了变化,但是元件2里的方块a和b,他们的坐标没有变化,因为他们在元件2里的位置没有变化;
要理解这个概念,您可以把元件2放在舞台的任何位置,然后双击元件2进入,观察方块a和b的坐标,他们的坐标是不变的;
所以,理解了上面这一点之后,再看看您的代码,只把元件1的坐标设定为元件2中方块b的坐标,肯定是不对的了,因为方块b自始至终都没有移动过,移动的是方块b所在的元件2;
正确的方法应该是将c的坐标设定为元件2的坐标+元件2中方块b的坐标,这样c的位置才跟元件2中的方块b对齐;
c._x = ab._x + ab.b._x;
c._y = ab._y + ab.b._y;
希望我的解答能解决您的困扰。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询