ExtJS 3.2学习笔记(3) 自定义事件

  

   在Extjs中,所有继承自Ext.util.Observable类的控件都可以支持事件。

   要为一个类自定义一些事件,遵循以下步骤即可:

  1,首先定义一个类

  2,让这个类继承Ext.util.Observable类

  3,为这个类定义一些事件,并且配置监听器

  4,触发类所定义的事件。

  看代码:

   第一步:定义类并且继承Ext.util.Observable类

定义一个Person 类
   
   Person=function(name){
     this.name=name;
     this.addEvents("walk","eat","sleep");
   }

  Ext.extend(Person,Ext.Util.Observable,{
     
        info:function(event){
         return this.name+'is'+event+'ing.';
     }
    })

  第二部:为类添加监听器;

      

var person=new Person("Mike");

  person.on('walk',function(){

    Ext.Msg.alert('event',person.name+'walk事件!!');

   });

  person.on('eat',function(breakfast,lunch,super){

    Ext.Msg.alert('event',person.name+'eat事         件!!'+breakfast+lunch+super);

   });

  person.on('sleep',function(time){

    Ext.Msg.alert('event',person.name+'sleep事件!!'+time);

   });


第三部:触发事件

    在页面添加三个按钮,id为别为:walk,eat,sleep

   

Ext.get('walk').on('click',function(){

    person.fireEvent('walk');

    });

  Ext.get('eat').on('click',function(){

    person.fireEvent('eat','早餐','午餐','晚餐');

    });

  Ext.get('walk').on('click',function(){

    person.fireEvent('sleep',new Date());

    });

调用fireEvent函数就可以根据事件名称匹配并且触发该事件。 上述代码中说使用的方法都是继承自Ext.util.Observable类。










转载于:https://my.oschina.net/u/937697/blog/135750

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值