flash開發時遇到這樣一個問題,貼了好多論壇,沒有人回答,不知道是問的水平低還是什麼原因,最後自己琢磨出來了。
問題如下:
---------------------------------------------------------------------------
在檔案夾中存在b.flv,在b.flv所在路徑中,建立c.fla,c.fla中建立一個as代碼控制的視頻元件,再建立影片剪輯Player,將視頻元件執行個體拖入Player舞台。建立圖層,在該圖層第一幀寫入代碼如下:
var vnc:NetConnection=new NetConnection();
vnc.connect(null);
var vns:NetStream=new NetStream(vnc);
vns.onStatus=function(infoObj:Object){
trace(infoObj["level"]+":"+infoObj["code"]);
}
function f_play(){
try{
video.attachVideo(vns);
video.setBufferTime(3);
vns.play("b.flv");
}catch(e){
throw e;
}
}
將影片剪輯Player拖入情境舞台中,執行個體名為mc_player。
在主時間軸第一幀中寫入代碼如下:
this.onLoad=function(){
mc_player.f_play();
}
測試影片,能夠正常顯示b.flv內容。
將c.fla發布為c.swf。
----------------------------------------------------------------------------------
在在b.flv所在路徑中,建立a.fla。
在a.fla中建立影片剪輯MC,拖入到情境舞台中,執行個體名為mc。
在第一幀中寫入代碼如下:
mc.loadMovie("c.swf");
測試影片,發現沒有顯示b.flv內容。
---------------------------------------------------------------------------------
各位大蝦,這是什麼原因啊?
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
還是自己找出了,是onLoad的原因。
修正後如下:
在檔案夾中存在b.flv,在b.flv所在路徑中,建立c.fla,c.fla中建立一個as代碼控制的視頻元件,再建立影片剪輯Player,將視頻元件執行個體拖入Player舞台。建立圖層,在該圖層第一幀寫入代碼如下:
var vnc:NetConnection=new NetConnection();
vnc.connect(null);
var vns:NetStream=new NetStream(vnc);
vns.onStatus=function(infoObj:Object){
trace(infoObj["level"]+":"+infoObj["code"]);
}
function f_play(){
try{
video.attachVideo(vns);
video.setBufferTime(3);
vns.play("b.flv");
}catch(e){
throw e;
}
}
f_play();
將影片剪輯Player拖入情境舞台中,執行個體名為mc_player。
測試影片,能夠正常顯示b.flv內容。
將c.fla發布為c.swf。
----------------------------------------------------------------------------------
在在b.flv所在路徑中,建立a.fla。
在a.fla中建立影片剪輯MC,拖入到情境舞台中,執行個體名為mc。
在第一幀中寫入代碼如下:
var lsnr:Object=new Object();
lsnr.onLoadComplete =function(evtObj:Object){
trace("complete");
}
var loader:MovieClipLoader=new MovieClipLoader();
loader.addListener(lsnr);
var mc:MovieClip=createEmptyMovieClip("mc", getNextHighestDepth());
loader.loadClip("d.swf",mc);
測試影片,正常顯示顯示b.flv內容。