0

我是新来的,刚刚在 Google 上找到了这些论坛。

首先,如果有这样的话题,我想道歉,但我搜索了整个论坛,没有找到任何可以解决我的问题。

现在是重要的。正如我在主题标题中所说,我需要一个 AS3 代码来做这件事。这就是我想要完成的。我的屏幕中央有一个 MC(图像),并且有两个按钮,一个在该 MC 的右侧,一个在该 MC 的左侧。我想在鼠标事件上向左或向右滚动(图像就像一个菜单),向下或向上。所以,我只想在按钮上按住鼠标按钮或将鼠标悬停在按钮上时更改 MC X 值。我已经设法做到了,但它只移动了我在鼠标事件后输入的一个值。这是我做的一段代码。

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);


}

我希望你能理解我,并知道如何帮助我。

非常感谢您!

干杯,伊万

4

2 回答 2

0

试试这个:

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;
  }

}
于 2010-04-27T14:36:55.573 回答
0

看起来您将事件侦听器附加到MOUSE_OVER事件而不是MOUSE_DOWN?由于调用了处理函数buttonL1Pressed,我假设您希望在用户单击按钮而不是鼠标光标悬停时触发事件。

抱歉,我不完全清楚你在问什么,但是当我阅读你的代码时,我突然想到了。

如果您可以提供更多详细信息,我很乐意提供帮助。

于 2010-04-27T14:37:14.860 回答