Кнопка, выступающая в качестве прокрутки с событием мыши в AS3? - PullRequest
0 голосов
/ 27 апреля 2010

Я новичок здесь, только что нашел эти форумы в Google.

Прежде всего, я хочу извиниться, если есть такие темы, но я искал целые форумы и не нашел ни одной, которая заканчивала бы мою проблему.

Теперь важный. Как я уже говорил в заголовке темы, мне нужен код AS3, который делает это. Это то, что я хочу выполнить. У меня есть MC (изображение) в центре моего экрана, и у меня есть две кнопки, одна справа и одна слева сторона этого MC. Я хочу прокрутить (изображение похоже на меню), что MC влево или вправо на событиях мыши, вниз или выше. Итак, я просто хочу изменить значение MC MC, удерживая кнопку мыши на кнопке или просто наводя курсор на них. Мне удалось это сделать, но он перемещается только на одно значение, которое я ввел после события мыши. Вот кусок кода, который я сделал.

buttonL1_btn.addEventListener(MouseEvent.MOUSE_OVER, buttonL1Pressed);


function buttonL1Pressed(event:MouseEvent):void{

var temp:int = 0;
var temp1:int = 0;
temp = paleta1_mc.x;
temp1 = temp - 5;
paleta1_mc.x = temp1;
trace(temp1);


}

Надеюсь, вы меня поняли, и у вас есть подсказка, как помочь мне в этом.

Большое спасибо заранее!

Cheers, Иван

Ответы [ 2 ]

0 голосов
/ 27 апреля 2010

Похоже, вы подключаете прослушиватель событий к событию MOUSE_OVER вместо MOUSE_DOWN? Поскольку ваша функция обработчика называется buttonL1Pressed, я предполагаю, что вы хотите, чтобы событие вызывалось, когда пользователь нажимает кнопку, а не когда курсор мыши находится над ней.

Извините, я не совсем понимаю, о чем вы спрашиваете, но это выскочило на меня, когда я читал ваш код.

Если вы можете предоставить немного больше деталей, я был бы рад помочь, если смогу.

0 голосов
/ 27 апреля 2010

Попробуйте это:

var isScrolling = false;

buttonL1_btn.addEventListener(MouseEvent.MOUSE_OVER, function(e){isScrolling =true});
buttonL1_btn.addEventListener(MouseEvent.MOUSE_OUT, function(e){isScrolling =false});
this.addEventListener(Event.ENTER_FRAME,checkAction)

function checkAction(event:Event):void{

  if (isScrolling)
  {
     paleta1_mc.x -=5;
  }

}
...