台灣最大程式設計社群網站
線上人數
1124
 
會員總數:246265
討論主題:189809
歡迎您免費加入會員
討論區列表 >> CSS/HTML5/Bootstarp >> 關於loadMovie的一個急問...
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
關於loadMovie的一個急問...
價值 : 20 QP  點閱數:1875 回應數:9
樓主

小米
門外漢
0 9
126 16
發送站內信

各位大大.在此有一個小問題想要請教大家...
假設我主畫面的影片為A.swf
我在我A.swf上的一個影片片段設定名稱為sta2
而我要匯入的影片為index-01..swf
我在A.swf最上方影格上寫 loadMovie("B.swf",sta2)
B.swf在顯示方面都沒有問題
但在index-01.swf上有一個程式卻跑不出來..
(原本有一晃動的選單一匯入後無法正常晃動..)
我是猜層級的問題..
但是怎麼改都改不好..
index-01.swf原本的程式碼為

link = function () {
getURL(_root.zurl[this.num]);
};
overs = function () {
_root.fnum = this.num;
};
outs = function () {
_root.fnum = 0;
};
mstyle = function () {
this._x = _root["m"+this.mb.num2]._x+(_root["m"+this.mb.num2]._width/2.1+this._width/2.2);
if (_root.fnum == this.mb.num) {
tempx = this._xscale;
tempy = this._yscale;
this._xscale = 1.57*(this._xscale+11)+(-0.8)*(this.px+14)+20;
this._yscale = 1.57*(this._yscale+11)+(-0.8)*(this.py+14)+20;
this.px = tempx;
this.py = tempy;
} else {
tempx = this._xscale;
tempy = this._yscale;
this._xscale = 1.57*(this._xscale+1)+(-0.8)*(this.px+1)+20;
this._yscale = 1.57*(this._yscale+1)+(-0.8)*(this.py+1)+20;
this.px = tempx;
this.py = tempy;
}
};
for (i=1; i<=6; i++) {
_root["m"+i].mb.num = i;
_root["m"+i].mb.num2 = i-1;
_root["m"+i].mb.num3 = i+1;
_root["m"+i].mb.onRollOver = overs;
_root["m"+i].mb.onRollOut = outs;
_root["m"+i].mb.onRelease = link;
_root["m"+i].onEnterFrame = mstyle;
}


想請問各位大大..
我該改的是對A.swf上的程式階層問題..還是此段程式..?
如果兩者皆要改..請問我到底是哪裡犯了錯誤呢?
煩請各位大大指點!3Q...>_<

-----------------------------------------補充
自己很盲目的試了幾個寫法..
雖然沒有什麼進展..
但是有個發現..
在A.swf上將原本的loadMovie("index-01.swf",sta2);改成loadMovie("index-01.swf",1);
自己也得很奇怪..
但這樣寫index-01.swf上面那個會晃動的也顯示正常了!
只是沒有匯入到指定的地方上..
而loadMovie("index-01.swf",sta2);這樣寫是無法正常晃動..
懇請知道未提出在哪的大大給我點提示..謝謝...

搜尋相關Tags的文章: [ loadMovie ] , [ level ] , [ 階層 ] ,
本篇文章發表於2006-01-24 11:13
1樓
回應

jerry
捐贈 VP 給 jerry 檢舉此回應
loadMovie("index-01.swf",sta2); 改成 loadMovie("index-01.swf","sta2"); 試試看
本篇文章回覆於2006-01-24 11:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小米
檢舉此回應
你好..
一開始我就是這樣寫..是後來才把雙引號拿掉..
有沒有放雙引號的結果都是一樣..就是無法晃動..
謝謝你..
本篇文章回覆於2006-01-24 11:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

泡夢
捐贈 VP 給 白果喵 檢舉此回應
因為你的影片用了_root所以無法正常運作了
請嘗試用MovieClip._lockroot或是將影片內的_root改成this
本篇文章回覆於2006-01-25 11:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

小米
檢舉此回應
因為你的影片用了_root所以無法正常運作了
請嘗試用MovieClip._lockroot或是將影片內的_root改成this
----------------------------------------------------------
你好,我將_root改成this後一開始load近來會晃動,但滑鼠經過就無反應。

想請教一下,因對程式還不是那麼熟..

所以如果要用MovieClip._lockroot去更改~是要如何使用呢?

謝謝..
本篇文章回覆於2006-01-25 14:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
最有價值解答

泡夢
捐贈 VP 給 白果喵 檢舉此回應
例如您的例子,只要在A.swf的loadMovie("B.swf",sta2)後加上sta2._lockroot=true
那sta2內的_root指向就只會指向sta2了(直至使用sta2._lockroot=false為止,當然_parent仍然可以使用)
本篇文章回覆於2006-01-25 16:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

泡夢
捐贈 VP 給 白果喵 檢舉此回應
忘了說_lockroot只可以在flash player7或以上使用
即是你製作flash的軟件至少要是flash mx2004或更新版本
本篇文章回覆於2006-01-25 16:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

小米
檢舉此回應
你好,我在沒有更改index-01.swf的_root下
在A.swf的loadMovie("B.swf",sta2)後加上sta2._lockroot=true
這樣index-01.swf已顯示正常!
但是是不是因為我沒有更改index-01.swf的_root
使得整個影片會越load越delay呢?
我index-01.swf也只64kb..
不知道是不是這點出了問題呢>?
非常感謝你的教學..謝謝!
本篇文章回覆於2006-01-25 16:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

小米
檢舉此回應
補充..
我現在程式碼為
loadMovie("index-01.swf",sta2);
sta2._lockroot=true;

想請問一下..使用這樣的匯入方式後..cpu使用率是100%...
我需要如何改寫程式或者要加些什麼來降低cpu使用率是100%呢?
希望各位大大幫忙..謝謝!
本篇文章回覆於2006-01-25 22:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
作者回應

小米
檢舉此回應
不好意思..我的問題已經找出來了..原來跟我再第八項發問的沒有什麼關係..

再次感謝泡夢幫我解決問題..謝謝!
本篇文章回覆於2006-01-25 23:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.