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.';
     }
    })

제2부: 클래스에 감청기 추가;
      
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);

   });

제3부: 이벤트 트리거
페이지에 세 개의 단추를 추가합니다. 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 클래스.

좋은 웹페이지 즐겨찾기