我有一个名为“BlueBox”的MovieClip实例,它只是一个蓝色的“绘图对象”。这是一个名为“option1MC”,这是“内部option1Container”,这是在舞台上的容器内。它的颜色可以像这样被改变:ActionScript 3 - 向对象添加渐变
option1Container.addEventListener(MouseEvent.MOUSE_OVER, option1ContainerOver);
var optionOver:ColorTransform = new ColorTransform();
optionOver.color = 0xC56516;
function option1ContainerOver(evt:Event):void {
option1Container.option1MC.BlueBox.transform.colorTransform = optionOver;
}
我想改变颜色的渐变。这是我的尝试:
var mtr:Matrix = new Matrix();
mtr.createGradientBox(option1Container.option1MC.BlueBox.width, option1Container.option1MC.BlueBox.height, 0, 0, 0);
mtr.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x0000FF], [1, 1], [0x00, 0xFF], mtr);
mtr.graphics.drawRect(0,0,option1Container.option1MC.BlueBox.width, option1Container.option1MC.BlueBox.height);
但是,现在当我运行FLA文件,这我给我一个错误说:
Access of possible undefined property graphics through a reference with static type flasg.geom:Matrix:
,并参照线
mtr.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x0000FF], [1, 1], [0x00, 0xFF], mtr);
mtr.graphics.drawRect(0,0,option1Container.option1MC.BlueBox.width, option1Container.option1MC.BlueBox.height);
任何想法为什么?
因为Matrix不是具有'graphics'成员的'DisplayObject'。 –