作者OrcaKW (Orca.小元)
看板Flash
标题[问题] 清除以graphics绘图的物件
时间Sat Jun 21 17:04:47 2014
最近在做一个小软体,其中有一个功能是可以清除上一次绘图的图形,
现在遇到「清不乾净」的问题……
先附上用来测试这功能的简易程式码
var squareSize:uint = 50;
var square:Shape = new Shape();
var shift_pix = 100; //位移量
var move_pix = 0;
button_2.addEventListener(MouseEvent.CLICK, draw_it);
function draw_it(event:MouseEvent):void
{
square.graphics.beginFill(0xFF0000, 0.5);
square.graphics.drawCircle(move_pix, move_pix, squareSize);
square.graphics.beginFill(0x00FF00, 0.5);
square.graphics.drawRect(100, move_pix, squareSize, squareSize);
square.graphics.beginFill(0x0000FF, 0.5);
square.graphics.drawRect(200, move_pix, squareSize, squareSize);
square.graphics.endFill();
stage.addChild(square);
move_pix += shift_pix; //每次清空画面之後,重新产生的位置会不同
}
button_1.addEventListener(MouseEvent.CLICK, clear_it);
function clear_it(event:MouseEvent):void
{
stage.removeChild(square); //应该是问题点?
}
程式执行之後,
当按下button_1,是可以让画面看起来清空了。
可是一按下button_2,除了新图形之外,却发现上一次画的图根本没有清掉@@
button_1的作用说是清掉这些图,还不如说是把图隐藏起来了……Orz"
请问到底是哪边出了问题、我该如何修正呢?
谢谢大家。
补上完整档案:
https://dl.dropboxusercontent.com/u/98470904/draw_and_clear.fla
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 120.105.220.13
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Flash/M.1403341490.A.420.html
※ 编辑: OrcaKW (120.105.220.13), 06/21/2014 17:15:46
1F:推 scars:square.graphics.clear() 06/21 18:30
感谢您,可以了!
※ 编辑: OrcaKW (120.105.220.13), 06/24/2014 23:42:33