0

我想创建一个位于图像顶部的不可见绘图表面。这个绘图表面将负责获取鼠标输入并将坐标传递给位于绘图表面和图像之间的层上的精灵。绘图表面是一个空的 Sprite。

根据文档,内部没有任何内容的显示对象不能设置其宽度或高度。也就是说,它将始终为零。

有没有办法解决?最佳做法是什么?

4

2 回答 2

2

您可以使用绘图 api 来绘制具有极低 alpha 值的形状,这将为您提供这些值而不会被眼睛看到。

也许更好的解决方案是从绘图表面精灵中在舞台上注册鼠标侦听器,并让它自己处理鼠标事件。我不太了解您要做什么,但如果可能的话,这将是一个更清洁/更简单的解决方案。

即使您不能将侦听器放在绘图表面精灵中,您也应该能够从您工作的地方将它们添加到舞台,而不是使用额外的对象。

于 2009-08-04T21:23:53.080 回答
2

如果您只需要绘图的限制,我认为最简单的解决方案是监听舞台鼠标事件,并以编程方式限制您的绘图......如果您仍然认为您需要那个透明精灵,您可以绘制一个透明矩形(beginFill (0, 0)) 或创建透明位图 (new BitmapData(width,height,true,0))。不确定哪个是“最佳实践”....

于 2009-08-04T21:24:38.507 回答