2012-12-15 76 views
0

我是as3的新手。我创建一个矩形并将其转换为符号。然后我进入符号并创建两个滑块。另外,我让符号可以拖动。Flash动作脚本3:拖动影片剪辑问题

controlPanel_mc.addEventListener(MouseEvent.MOUSE_DOWN, dragStartF); 
controlPanel_mc.addEventListener(MouseEvent.MOUSE_UP, dragEndF); 

function dragStartF(e:MouseEvent){ 
    e.currentTarget.startDrag(); 
} 
function dragEndF(e:MouseEvent){ 
     e.currentTarget.stopDrag(); 
} 

它工作正常,但我不能使用滑块。如果我拖动滑块,整个影片剪辑就会移动。我怎么解决这个问题?干杯!

回答

0

没有关于FLA文件结构的更多信息,我假设controlPanel_mc是包含矩形[背景]和两个滑块的容器。

看起来你在你的代码中做的事情是将事件监听器添加到容器中,这意味着“如果在该对象上发生点击,请执行以下操作”。由于该剪辑“拥有”2个滑块,所以滑块不会得到任何MOUSE_DOWN事件,因为父母始终是首先处理事件的人。

您可能想要将背景转换为符号并将该事件添加到该对象。

bg.addEventListener(MouseEvent.MOUSE_DOWN, onBgClick); 
bg.addEventListener(MouseEvent.MOUSE_UP, onBgRelease); 

function onBgClick(e:MouseEvent){ 
    controlPanel_mc.startDrag(); 
} 
function onBgRelease(e:MouseEvent){ 
    controlPanel_mc.stopDrag(); 
} 

这应该解决您的问题:)

相关问题