我在as3中使用bit101组件进行闪存,我有一个白色背景颜色的窗口。我想让那种颜色半透明。如果我为窗口设置alpha,窗口内的所有内容也是半透明的。我只想要背景。我该如何做到这一点?这是我的代码:
window = new Window(square, 10, 10, 'ADVANCED\t\t\t\t\t\t\t Use spacebar to randomize values');
window.width = 380;
window.height = 140;
window.hasMinimizeButton = true;
window.shadow = false;
window.minimized = true;
window.addEventListener(Event.RESIZE, onWindowResizeHandler, false, 0, true);
window.color = 0xFFFFFF;
答案 0 :(得分:1)
通过快速查看源代码,Window
似乎包含Panel
,而Panel
包含受保护的_background
对象。
https://github.com/minimalcomps/minimalcomps/blob/master/src/com/bit101/components/Panel.as
override public function draw():void
{
super.draw();
_background.graphics.clear();
_background.graphics.lineStyle(1, 0, 0.1);
if(_color == -1)
{
_background.graphics.beginFill(Style.PANEL);
}
else
{
_background.graphics.beginFill(_color);
}
_background.graphics.drawRect(0, 0, _width, _height);
_background.graphics.endFill();
...
我会尝试扩展Window
和Panel
类,并以某种方式添加指定backgroundAlpha
属性的能力,这将是beginFill()
的第二个参数以上。看起来很多工作。
似乎没有更简单的方法来做到这一点。