我正在开发一个有多个声道的闪光灯混音器应用程序,音量旋钮旁边的灯有问题。
有没有办法只隐藏图像的一部分?
在下图中,image-2位于image-1之上,以创建某种音量级别指示器效果,image-2的多少取决于音量的值。
图片地址:http://s30.postimg.org/r3ow1g5bl/volume_lights_level.png
我试着降低了image-2的高度,但它看起来很糟糕,而且失真了。
flash中有没有和CSS的行为非常相似的东西呢?
示例:我将image-2设置为一个形状的背景,当我减小形状的高度时,image- reduce不会变形,也不会改变其高度。
在寻找解决方案的过程中,我遇到了掩码属性,但我不太理解它是如何工作的,并且显示的大多数示例都是放置在圆圈中的图像。
在这种情况下,掩码属性是否适用?
我对flash是个新手,所以我还不知道很多事情。
发布于 2014-12-10 21:02:18
你确实可以使用一个面具。
如何以编程方式创建掩码
将名为myImage的图像的匹配项放在舞台上,并在该匹配项上放置具有相同尺寸的名为myMask的遮罩。您可以使用myImage的mask property对其应用myMask掩码,如下所示:
主时间线
myImage.mask = myMask;
function mouseMoveHandler(e:MouseEvent):void {
myMask.height = myImage.y - e.stageY;
}
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);您只需在单击按钮的函数中使此代码适应您的动画。
发布于 2014-12-12 09:01:07
我现在让它工作了,非常感谢@VC.One。这就是我是如何做到的。
将img-2导入stage,将其转换为元件(类型:影片剪辑),指定实例名称: img2_mc。
然后将该掩码应用于img2_mc。
/*代码*/
img2_mc.mask = mask_mc;
function onEnterFrame(event:Event):void{
var volumeKnob_y = volSliderKnobOn.y + 12; //将其调整到旋钮的中心
mask_mc.height = volumeKnob_y;}
https://stackoverflow.com/questions/27396820
复制相似问题