我正在使用flex sdk并尝试绘制原始几何图形,以下代码有什么问题?我尝试没有按钮的触发器(放置),但没有工作。
<mx:Script>
import flash.display.Sprite;
import flash.display.Shape;
private function draw_circle():void
{
var myCircle:Shape = new Shape();
myCircle.graphics.beginFill(0x00000, 1);
myCircle.graphics.drawCircle(0, 0, 30);
addChild(myCircle);
}
</mx:Script>
<mx:Button x="30" y="0" name="circle" click= '{draw_circle()}'>
</mx:Button>
答案 0 :(得分:2)
您endFill
之后需要beginFill
:
private function draw_circle():void
{
var myCircle:Shape = new Shape();
myCircle.graphics.beginFill(0x00000, 1);
myCircle.graphics.drawCircle(0, 0, 30);
myCircle.graphics.endFill();
addChild(myCircle);
}
可以找到适当的文件here。
直到最后才会渲染填充 调用endFill()方法。
答案 1 :(得分:0)
private function draw_circle(event:Event):void { var myCircle:Shape = new Shape(); myCircle.graphics.beginFill(0x00000, 1); myCircle.graphics.drawCircle(0, 0, 30); myCircle.graphics.endFill(); addChild(myCircle); }
...也
<mx:Button x="30" y="0" name="circle" click= 'draw_circle(event);'>
如果你没有指定endFill(),你可能会遇到重要的记忆问题但是仍然应该绘制圆圈