2011-02-09 6 views
1

У меня есть основная панель, состоящая из подпанелей, и я хотел бы запустить событие на главной панели и прослушать его на дополнительной панели.Sencha Touch fireEvent

Я могу запустить событие внутри субпанели, и все работает, но я не могу показать огонь из главной панели.

Мое пространство имен для дополнительной панели - «test.testCard», и я попытался запустить это событие без успеха.

ответ

3

Вот пример того, как сделать это:

Ext.setup({ 
    onReady: function() { 
     var mainPanel = new Ext.Panel({ 
      fullscreen: true, 
      layout: 'fit', 
      renderTo: Ext.getBody(), 

      listeners: { 
       'mycustomevent': function() { 
        alert('event fired!'); 
       } 
      }, 

      items: [ 
       { 
        items: [ 
         { 
          html: 'My inner panel' 
         }, 
         { 
          xtype: 'button', 
          text: 'Click me!', 
          handler: function() { 
           mainPanel.fireEvent('mycustomevent', this); 
          } 
         } 
        ] 
       } 
      ] 
     }); 
    } 
}); 

Вы можете видеть, что я создаю ссылку на mainPanel, а затем ссылаться на него позже в моем коде в обработчике кнопки, где я тогда называть fireEvent с моим пользовательским событием. Затем в моем mainPanel я добавляю слушателя для mycustomevent.

Как уже отмечалось, лучше всего разместить сообщение на Sencha Forums, так как вы получите гораздо более быстрый ответ.

 Смежные вопросы

  • Нет связанных вопросов^_^