用flash as3以R键操作全部三个球,当按下R键时,所有3个小球全部回归到初始位置,且全部还原为黑色的球,且球保持静止。
时间: 2024-02-24 15:57:11 浏览: 21
好的,您可以按照以下步骤来编写代码:
1. 首先,为三个小球创建一个MovieClip,将它们的初始位置和颜色设置好,并将它们添加到舞台中。
2. 然后,为舞台添加一个键盘事件监听器,当按下R键时,触发一个函数。
3. 在这个函数中,使用Tween类或者直接使用MovieClip的属性,将三个小球移动到初始位置,并将它们的颜色设置为黑色。
4. 最后,使用stop()方法将三个小球停止在初始位置。
下面是示例代码:
```actionscript
import fl.transitions.Tween;
import fl.transitions.easing.*;
var ball1:MovieClip = ball_mc1;
var ball2:MovieClip = ball_mc2;
var ball3:MovieClip = ball_mc3;
// 设置初始位置和颜色
ball1.x = 100;
ball1.y = 100;
ball1.gotoAndStop(1);
ball2.x = 200;
ball2.y = 100;
ball2.gotoAndStop(1);
ball3.x = 300;
ball3.y = 100;
ball3.gotoAndStop(1);
// 添加键盘事件监听器
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
function onKeyDown(event:KeyboardEvent):void {
if (event.keyCode == Keyboard.R) {
// 移动小球
new Tween(ball1, "x", Strong.easeOut, ball1.x, 100, 1, true);
new Tween(ball1, "y", Strong.easeOut, ball1.y, 100, 1, true);
new Tween(ball1, "alpha", Strong.easeOut, ball1.alpha, 1, 1, true);
ball1.gotoAndStop(1);
new Tween(ball2, "x", Strong.easeOut, ball2.x, 200, 1, true);
new Tween(ball2, "y", Strong.easeOut, ball2.y, 100, 1, true);
new Tween(ball2, "alpha", Strong.easeOut, ball2.alpha, 1, 1, true);
ball2.gotoAndStop(1);
new Tween(ball3, "x", Strong.easeOut, ball3.x, 300, 1, true);
new Tween(ball3, "y", Strong.easeOut, ball3.y, 100, 1, true);
new Tween(ball3, "alpha", Strong.easeOut, ball3.alpha, 1, 1, true);
ball3.gotoAndStop(1);
// 设置颜色和停止运动
ball1.transform.colorTransform = new ColorTransform();
ball2.transform.colorTransform = new ColorTransform();
ball3.transform.colorTransform = new ColorTransform();
ball1.stop();
ball2.stop();
ball3.stop();
}
}
```
希望能够帮助您解决问题。