我是flash的新手。 我想单击一个圆圈来显示一个围绕它的矩形,然后单击此阶段中的任何其他位置来隐藏此矩形,如何实现此事件?
感谢您的帮助!!!
答案 0 :(得分:1)
在Sprite中绘制圆圈。以编程方式,这可以通过以下方式完成:
var circle : Sprite = new Sprite();
circle.graphics.beginFill(0xffcc00);
circle.graphics.drawCircle(20, 20, 20); // center x, y and radius
addChild(circle);
当有人点击它时,请使用getBounds()方法获取定义圆的边界矩形的Rectangle
实例(以避免对其尺寸进行硬编码。)使用以下信息绘制矩形这个Rectangle
实例。
// Create an empty Sprite into which we will draw our rectangle
var rect : Sprite = new Sprite();
circle.addEventListener(MouseEvent.CLICK, handleCircleClick);
function handleCircleClick(ev : MouseEvent) : void {
var bounds : Rectangle;
// Draw rectangular graphics into the rect sprite
bounds = circle.getBounds(circle.parent);
rect.graphics.beginFill(0x00ff00);
rect.graphics.drawRect(bounds.left, bounds.top, bounds.width, bounds.height);
// Add rect to stage, below circle
circle.parent.addChildAt(rect, 0);
}
当用户点击圈子外,我会把它作为练习来隐藏直接精灵。
请注意,这只是一种方法,但由于您没有解释您的设置并且没有提供有关您的案例的详细信息,因此这是最简单的方法。