我在Flash专业版中使用Actionscript 3。我在舞台上有一个视频对象。我希望用户能够根据自己的选择调整视频对象的大小。例如,当鼠标光标悬停在视频对象上时,您可以将视频对象拖出以增加,减小视频对象的宽度和高度。 不幸的是,我不知道该怎么做。到目前为止这是我的代码。如果你能给我任何伟大的建议!
var cam:Camera = Camera.getCamera();
cam.setMode(350, 150, 15);
cam.setQuality(0, 85);
cam.addEventListener(StatusEvent.STATUS, statusHandler);
var vid:Video = new Video();
vid.width = cam.width;
vid.height = cam.height;
vid.x = 52;
vid.y = 33;
vid.attachCamera(cam);
addChild(vid);
var mic:Microphone = Microphone.getEnhancedMicrophone();
mic.framesPerPacket = 1;
mic.setSilenceLevel(0, 2000);
mic.gain = 50;
mic.codec = SoundCodec.SPEEX;
mic.addEventListener(StatusEvent.STATUS, micStatus);
var vidStream:Video = new Video();
vidStream.width = cam.width;
vidStream.height = cam.height;
vidStream.x =x=(vid.x+ cam.width +10); vidStream.y=vid.y;
addChild(vidStream);
答案 0 :(得分:0)
通常,使用MOUSE_DOWN MouseEvent触发使用MOUSE_MOVE MouseEvent更改视频大小的侦听器函数。 MOUSE_MOVE的侦听器函数将设置vid.width = vid.width + something。或者它可能是 - 某事或某事。当鼠标移动时它会一直这样做,所以不要忘记用另一个侦听MOUSE_UP的函数删除MOUSE_MOVE监听器。
'某事'是什么取决于你想要改变大小的方式。但它可能只是鼠标从MOUSE_DOWN点移动的距离。
我可以为你编写代码,但这会带走所有的乐趣和学习编程的机会。但是我会告诉你,视频在舞台上会有'localX'和'localY'属性,你可以用来告诉你的程序鼠标在视频中的位置。您可以(并且应该)对某些参数使用stageX和stageY,因为如果您的视频缩小太多以至于鼠标不再超过它,则“本地”值将不再起作用,