2011-09-12 48 views

回答

2

如果你只是想而不刪除形狀(圖形)刪除影片剪輯在主影片剪輯(雷達),你可以這樣做:

for (var i : int = radar.numChildren-1 ; i >= 0 ; i--) 
{ 
    if(radar.getChildAt(i) is MovieClip) 
    { 
     radar.removeChildAt(i); 
    } 
} 
0
function removeChildrenOf(mc:MovieClip):void{ 
    if(my_mc.numChildren!=0){ 
     var k:int = mc.numChildren; 
     while(k --) 
     { 
      mc.removeChildAt(k); 
     } 
    } 
} 

reference

+0

不,我沒有得到你。 – Benny

1

但這會導致的movieclip圖形本身被刪除。

您正在移除它的全部子項DisplayObjects。您無法刪除所有子對象,也不會丟失「圖形」。

0

我寫了這個類而回。它創建一個MovieClip內容的位圖快照。刪除所有的孩子,然後將該位圖添加到容器。這個課程/課程的初衷是爲了給你一個平滑渲染的圖像進行重新縮放。在Flash中,如果MovieClip中有圖像並縮小它,則Bitmap可能會失去清晰度。使用BitmapData類的「平滑」屬性(自動設置)將保留完整性。

您只需在圖書館實例中擴展該類,並使用適合您需要的類。

框架(進行中) - https://github.com/charlesclements/as3-tools

類目錄參考 - https://github.com/charlesclements/as3-tools/tree/master/net/charlesclements/gadgets/display

SimpleAutoSmoothMovieClip.as - 這是最容易使用的一個。該類假定所有要捕獲的內容都在(x:0,y:0)註冊點內。從那裏寬度自動計算。

AutoSmoothMovieClip.as - 該類預計那裏是一個孩子的MovieClip一個實例名稱爲「克」包含所有內容,採取的快照。這個「gr」MovieClip將被動態移除。