Связывайте изображения / слои в Flash CS4 - заставляя их двигаться вместе - PullRequest
0 голосов
/ 15 ноября 2009

У меня есть две копии изображения (одна называется blurPic_mc, а другая - sharpPic_mc), и я хочу иметь возможность перемещать их по экрану вместе. Мне нужно, чтобы они оставались точно друг над другом для некоторых других функций, которые я выполняю, но сейчас единственной, которая движется, является верхняя (sharpPic_mc). Есть идеи? Я включил свой код ниже.

sharpPic_mc.addEventListener(MouseEvent.MOUSE_DOWN,Click);
sharpPic_mc.addEventListener(MouseEvent.MOUSE_UP,Release);

function Click(event:MouseEvent):void{
  event.currentTarget.startDrag();
  blurPic_mc.startDrag();
}
function Release(event:MouseEvent):void{
  event.currentTarget.stopDrag();
  blurPic_mc.startDrag();
}

1 Ответ

1 голос
/ 15 ноября 2009

Я уверен, что startDrag позволяет перетаскивать только один мувиклип одновременно. Так что вы захотите сделать это.

sharpPic_mc.addEventListener(MouseEvent.MOUSE_DOWN,onImageDown); 
blurPic_mc.addEventListener(MouseEvent.MOUSE_DOWN,onImageDown); 


function onImageDown(e:MouseEvent):void
{
  //listening to stage
  stage.addEventListener(MouseEvent.MOUSE_MOVE, onMove);
  stage.addEventListener(MouseEvent.MOUSE_UP, onImageRelease);
}

function onImageRelease(e:MouseEvent):void
{
  removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
  removeEventListener(MouseEvent.MOUSE_UP, onImageRelease);
}


function onMove(e:MouseEvent):void
{
  blurPic_mc.x = e.stageX;
  blurPic_mc.y = e.stageY;

  sharpPic_mc.x = e.stageX;
  sharpPic_mc.y = e.stageY;
}
...