多媒体交互应用基础(2)
2012-02-17 19:58
281 查看
问题一:当鼠标按下的时候,让一个物体进行拖动。
步骤:使用上一节的文件,这次要修改的是鼠标一个事件MouseEvent.MOUSE_DOWN。监听的对象是一mc(MovieClip类型)
package
{
import flash.display.MovieClip;
import flash.events.*;
import flash.display.SimpleButton;
public class Example extends MovieClip
{
public function Example()
{
Btn.addEventListener(MouseEvent.CLICK,onClick);
mc.addEventListener(MouseEvent.MOUSE_DOWN,onKeyDown2);
}
private function onClick(e:MouseEvent):void
{
mc.scaleX=0.5;
mc.scaleY=0.5;
}
private function onKeyDown2(e:MouseEvent):void
{
var obj:MovieClip=e.target as MovieClip;
obj.startDrag();
}
}
}
可以发现,这里改动很少,只是改动了 增加
mc.addEventListener(MouseEvent.MOUSE_DOWN,onKeyDown2);
private function onKeyDown2(e:MouseEvent):void
{
var obj:MovieClip=e.target as MovieClip;
obj.startDrag();
}
我们调用了一个拖动的函数。 obj.startDrag();
这个函数是当我们按下鼠标的时候,物体被我们拖动了
说明一下,mc这个对象是在文档里面属性定义的。
问题二:当鼠标松开的时候,让一个物体停止拖动。
步骤:
继续上面的文件,我们继续添加一个监听事件,这次添加的松开鼠标的状态
stage.addEventListener(MouseEvent.MOUSE_UP,onKeyup);
增加这个后,当鼠标松开的时候,物体就会停止拖动了。
package
{
import flash.display.MovieClip;
import flash.events.*;
import flash.display.SimpleButton;
public class Example extends MovieClip
{
public function Example()
{
Btn.addEventListener(MouseEvent.CLICK,onClick);
mc.addEventListener(MouseEvent.MOUSE_DOWN,onKeyDown2);
stage.addEventListener(MouseEvent.MOUSE_UP,onKeyup);
}
private function onClick(e:MouseEvent):void
{
mc.scaleX=0.5;
mc.scaleY=0.5;
}
private function onKeyDown2(e:MouseEvent):void
{
var obj:MovieClip=e.target as MovieClip;
obj.startDrag(true);
}
private function onKeyup(e:MouseEvent):void
{
mc.stopDrag();
}
}
}
停止拖动的函数是stopDrag();
以上两个是一个很常用的技巧,拖动和停止拖动,可以制作一些图片拖动的效果。希望对你有所帮助
步骤:使用上一节的文件,这次要修改的是鼠标一个事件MouseEvent.MOUSE_DOWN。监听的对象是一mc(MovieClip类型)
package
{
import flash.display.MovieClip;
import flash.events.*;
import flash.display.SimpleButton;
public class Example extends MovieClip
{
public function Example()
{
Btn.addEventListener(MouseEvent.CLICK,onClick);
mc.addEventListener(MouseEvent.MOUSE_DOWN,onKeyDown2);
}
private function onClick(e:MouseEvent):void
{
mc.scaleX=0.5;
mc.scaleY=0.5;
}
private function onKeyDown2(e:MouseEvent):void
{
var obj:MovieClip=e.target as MovieClip;
obj.startDrag();
}
}
}
可以发现,这里改动很少,只是改动了 增加
mc.addEventListener(MouseEvent.MOUSE_DOWN,onKeyDown2);
private function onKeyDown2(e:MouseEvent):void
{
var obj:MovieClip=e.target as MovieClip;
obj.startDrag();
}
我们调用了一个拖动的函数。 obj.startDrag();
这个函数是当我们按下鼠标的时候,物体被我们拖动了
说明一下,mc这个对象是在文档里面属性定义的。
问题二:当鼠标松开的时候,让一个物体停止拖动。
步骤:
继续上面的文件,我们继续添加一个监听事件,这次添加的松开鼠标的状态
stage.addEventListener(MouseEvent.MOUSE_UP,onKeyup);
增加这个后,当鼠标松开的时候,物体就会停止拖动了。
package
{
import flash.display.MovieClip;
import flash.events.*;
import flash.display.SimpleButton;
public class Example extends MovieClip
{
public function Example()
{
Btn.addEventListener(MouseEvent.CLICK,onClick);
mc.addEventListener(MouseEvent.MOUSE_DOWN,onKeyDown2);
stage.addEventListener(MouseEvent.MOUSE_UP,onKeyup);
}
private function onClick(e:MouseEvent):void
{
mc.scaleX=0.5;
mc.scaleY=0.5;
}
private function onKeyDown2(e:MouseEvent):void
{
var obj:MovieClip=e.target as MovieClip;
obj.startDrag(true);
}
private function onKeyup(e:MouseEvent):void
{
mc.stopDrag();
}
}
}
停止拖动的函数是stopDrag();
以上两个是一个很常用的技巧,拖动和停止拖动,可以制作一些图片拖动的效果。希望对你有所帮助