Re: [問題] Flex3如何存取mxml裡的label??
※ 引述《cjcat2266 (CJ Cat)》之銘言:
: 一個Flex程式最外層的DisplayObjectContainer叫做root
: root是一個Sprite物件
: 你在Flex裡面所放的所有control物件都在root.application裡面
: 那個class之所以抓不到label的原因
: 是因為你直接寫label,程式會以為你是要找這個class的物件裡的label
: 帶是這個class又沒有定義label這個property,當然會出錯
: 有一個解決方式,就是在這個class定義多宣告一個變數
: 讓他成能夠得到Flex主程式的root reference
: public var r:Sprite;
: 另外把change()改成這樣
: public function change():void {
: Sprite(this.r.application).label.text = "some text";
: }
: 然後在主程式MXML裡面需要修改label的函式裡面寫
: //假如你的class叫做MyClass
: var obj:MyClass = new MyClass();
: obj.r = root;
: obj.change();
: 這樣就可以了
: 以上code沒有經過測試,可能有打錯字
: 不過理論上可行 :)
首先感謝兩位大大的協助,學了很多^^~
剛剛試了一下CJ CAT大的程式....
但還是不行耶@@|||
原理大致上了解了,但還是報出一樣的錯誤....
目前有在查說明文件了,不知大大是否可以在指點一下明路~^^~ 謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.249.114
推
01/23 23:02, , 1F
01/23 23:02, 1F
→
01/24 10:36, , 2F
01/24 10:36, 2F
討論串 (同標題文章)
Flash 近期熱門文章
PTT數位生活區 即時熱門文章