云自無心水自閑

          天平山上白云泉,云自無心水自閑。何必奔沖山下去,更添波浪向人間!
          posts - 288, comments - 524, trackbacks - 0, articles - 6
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          ?

          在Flex的開發過程中,尤其是在使用Cairngorm的時候,總會遇到需要在Model的屬性值改變后,需要調用一個指定的函數。傳統的解決方法是使用一個Setter方法,在這個方法中首先對屬性賦值,然后調用指定的函數,比如:

          ---------------------------
          [ChangeEvent("deleteEnabledChange")]
          public function get deleteEnabled() : Boolean {
          return _deleteButtonVisible;
          }

          public function set deleteEnabled(value : Boolean) : Void {
          _deleteButtonVisible = value;
          SimpleButton(deleteButton)._visible = false;
          dispatchEvent(new Event("deleteEnabledChange", this));
          }
          --------------

          但是現在我們有一個更簡潔的解決之道
          首先添加這樣一個類
          package com.adobe.ac.util
          {
          ?? public class Observe
          ?? {
          ????? public var handler : Function;
          ?
          ????? public function set source( source : * ) : void
          ????? {
          ???????? handler.call();
          ????? }
          ?? }
          }
          然后就可以使用這個作為標簽了。
          <util:Observe source="{ model.myProperty }"
          ????????????? handler="{ this.myFunction }"/>
          使用了這樣的一個標簽后,今后嘦是對model.myProperty進行賦值,就會調用myFunction
          這個號稱世上最小的標簽是不是很好用啊?




          評論

          # re: Cairngorm中Model數據變化后如何自動調用一個自定義函數?[未登錄]  回復  更多評論   

          2007-04-13 10:06 by 永恒
          呵呵,相當巧妙的方法啊

          # re: Cairngorm中Model數據變化后如何自動調用一個自定義函數?  回復  更多評論   

          2008-05-16 02:32 by iptton
          這樣就有點不厚道了吧。。代碼抄別人的也不注明...

          # re: Cairngorm中Model數據變化后如何自動調用一個自定義函數?  回復  更多評論   

          2009-01-12 11:18 by QQ124294272
          巧個鬼啊,還不如直接在MODEL中用回調,

          # re: Cairngorm中Model數據變化后如何自動調用一個自定義函數?  回復  更多評論   

          2013-07-11 20:58 by lobtao
          直接用回調函數
          主站蜘蛛池模板: 房产| 永德县| 博爱县| 桃江县| 昭通市| 福安市| 开江县| 秦皇岛市| 肃北| 确山县| 商河县| 靖江市| 甘南县| 滦平县| 延寿县| 和平区| 镶黄旗| 宜君县| 汶上县| 交城县| 河曲县| 陵川县| 铜梁县| 集安市| 贞丰县| 伊春市| 英德市| 井陉县| 齐河县| 碌曲县| 侯马市| 炎陵县| 怀柔区| 明光市| 衡阳市| 颍上县| 轮台县| 铜山县| 图们市| 建平县| 吉林省|