以下是我到目前为止的代码。现在我只想让它画一个正方形并让它出现。现在当我点击MXML中定义的区域为<components:PaintArea width="100%" height="100%" id="paint-a"></PaintArea>
时,它什么也没有显示;但是,actionlistener会被触发,并且元素正在添加到组中。不确定究竟发生了什么......也许是因为某些原因它不认为该元素是可绘制的?无论如何感谢你的帮助!
public class PaintArea extends SkinnableContainer
{
private var canvas:Group;
public function PaintArea()
{
super();
canvas = new Group();
canvas.clipAndEnableScrolling = true;
canvas.percentHeight = 100;
canvas.percentWidth = 100;
canvas.addEventListener(MouseEvent.MOUSE_UP,drawRectangle);
this.addElement(canvas);
}
private function drawRectangle(e:MouseEvent):void{
var r:Rect = new Rect();
r.fill = new SolidColor(0x00ff00,.5);
canvas.addElement(r);
}
}
答案 0 :(得分:4)
您应该设置矩形width
的{{1}}和height
。
答案 1 :(得分:0)
你也可以使用BorderContainer(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/BorderContainer.html) - 它是一个带有可设置边框和填充的SkinnableContainer