我要打電話,但未通過圖書館加到一個MovieClip,但我得到這個錯誤:AS3 - 如何解決未定義屬性錯誤的訪問?
1120: Access of undefined property light.
這是我的代碼:
var btn:Btnselect;
btn = new Btnselect();
con.addChild(btn);
btn.name = "light"
light.box.visible=false
爲什麼不確定?
我要打電話,但未通過圖書館加到一個MovieClip,但我得到這個錯誤:AS3 - 如何解決未定義屬性錯誤的訪問?
1120: Access of undefined property light.
這是我的代碼:
var btn:Btnselect;
btn = new Btnselect();
con.addChild(btn);
btn.name = "light"
light.box.visible=false
爲什麼不確定?
您試圖訪問影片剪輯,就像您在Flash IDE,在其中設置在屬性面板中的name屬性,這就是你如何在AS3訪問
然而,實例在AS3影片剪輯時(意思,您沒有將它們從庫中拖到舞臺上),變量設置不同。
在這裏,你應該引用「BTN」不「輕」
btn.box.visible = false;
因爲這是你叫什麼你的變量
Access of undefined property light.
意味着light,具有空引用,並且您正在嘗試訪問它。確保變量燈已經初始化,或者在舞臺中有一個對影片剪輯的引用。
我認爲你應該使用getChildByName
方法,例如
getChildByName("light").box.visible = false;
而不是:light.box.visible=false
'可變光已經初始化或它有一個參考舞臺上的電影剪輯'你能給我舉個例子嗎? – Jay
光變量從哪裏來?你初始化了它嗎?還是在舞臺上的電影剪輯? –
我通過這個設置:'btn.name =「light」' – Jay