`

ChangeWatcher 绑定用法

    博客分类:
  • Flex
阅读更多
<?xml version="1.0" ?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.events.PropertyChangeEvent;
     import mx.binding.utils.ChangeWatcher;
     import mx.binding.utils.BindingUtils;
     import mx.controls.Alert;
      
       private var namewatcher:ChangeWatcher;
       private function init():void
       {
    namewatcher = BindingUtils.bindProperty(textArea,"text",person,"text");
    ChangeWatcher.watch(textArea,"text",nameSetter); 
  //  textArea.addEventListener(Event.CHANGE,change); 
  //namewatcher.unwatch();
       }
      
       private function bindMe():void{
         namewatcher = BindingUtils.bindProperty(txt,"text", txtInp,"text");//前面属性跟着后面属性变化
       }
      
       private function unbindMe():void{
               namewatcher.unwatch();           
       }
       private function nameSetter(event:Event):void
       {
       Alert.show(event.toString());
       }
       private function change(event:Event):void
       {
       // Alert.show("changed");
       }
  

]]>
</mx:Script>
<mx:TextInput id="txtInp" width="200" />
<mx:Text id="txt" width="200" />
<mx:Button label="Bind TextInput to Text" click="bindMe()" />
<mx:Button label="Unbind TextInput to Text" click="unbindMe()" />
<mx:TextInput id="textArea"/>
<mx:TextInput id="person"/>
</mx:Application>
分享到:
评论

相关推荐

    绑定也疯狂 第二版

    上述代码示例演示了这个过程,其中使用了ChangeWatcher观察器来监听属性变化,并在属性值变化时更新目标位置。 总之,AS3.0的绑定机制是一种高效的编程模式,它能够帮助开发者构建高效的应用程序架构。通过掌握绑定...

    Flex 动态绑定BindingUtils.bindProperty

    动态绑定是通过`ChangeWatcher`对象实现的,`watcher1`和`watcher2`分别用于这两个绑定。当不再需要绑定时,可以通过调用`unwatch()`方法来解除绑定,这样就不会再有属性之间的联动更新。 这个功能在Flex应用中非常...

    Flex Data Binding详解

    - **ChangeWatcher**:虽然ChangeWatcher可以用来监视某些对象属性的变化,但它无法监控私有变量或自定义事件的变更,除非你手动处理这些事件。 - **自定义事件**:在使用自定义事件时,必须确保在源数据改变后正确...

    flex如何进行内存优化

    - 当使用`BindingUtils.bindSetter()`或`ChangeWatcher.watch()`等方法时,记得调用`ChangeWatcher.unwatch()`来取消监听,以防止内存泄露。 3. **效果处理:** - 当使用动画效果(如`Effect`)时,在不再需要时...

    FLEX内存释放优化原则

    - 如果使用了记录功能(如`BindingUtils.bindSetter()`或`ChangeWatcher.watch()`),那么在不再需要这些功能时,应当调用相应的取消记录方法(如`ChangeWatcher.unwatch()`)。这可以避免因记录未被清除而导致的...

    FLEX内存优化技巧集合

    2. **系统类泄露**:使用系统类如BindingUtils、ChangeWatcher等后,忘记执行相应的清除操作。 3. **效果泄露**:应用效果到组件后,删除对象前需停止效果并解除target引用。 4. **SWF泄露**:卸载SWF时,调用unload...

Global site tag (gtag.js) - Google Analytics