调用clear()时,Spark BorderContainer皮肤图形对象消失

时间:2011-11-16 07:44:39

标签: flash flash-builder flex-spark

我正在使用Flash Builder 4.5在Adobe AIR中创建基本绘图应用程序。现在,用户通过直接绘制到BorderContainer的外观来绘制Spark BorderContainer。

例如:

var g:Graphics = drawBC.skin.graphics(); //drawBC is the id of my BorderContainer
g.drawWithMouse() // series of listeners that draw only when the user's mouse is clicked

目前,用户绘制的线条永远不会被删除,用户将继续绘制以前的标记。

如果我这样做:

g.clear();

BorderContainer似乎消失了,因为边框不再可见,即使对象仍在那里。此外,即使我从未删除过侦听器,但是应该检测用户是否在BorderContainer上单击鼠标的侦听器也不起作用。

trace(g) //isn't null
trace(drawBC) //isn't null
trace(drawBC.enabled) //prints true

我做错了什么?如何清除BorderContainer以便我可以再次在新的空白页中绘制内容?我有一种感觉,因为我正在清理皮肤的图形,但如果我使用drawBC.graphics,则在背景下绘制线条并且无法看到。

0 个答案:

没有答案