У меня есть панель сетки, как это
Ext.define('sCon.view.SalesGrid',{
extend: 'Ext.grid.GridPanel',
title: 'Sales Data',
//other params
initComponent: function(){
this.callParent(arguments);
}
});
В событии щелчка я хочу изменить заголовок этой панели. Мой код внутри контроллера выглядит так.
Ext.define('sCon.controller.SalesGridController', {
extend: 'Ext.app.Controller',
views: ['SalesGrid'],
// other handlers
changeTitle: function(newTitle){
this.getView('SalesGrid').setTitle('title_changed');
}
В настоящее время он говорит, что у него нет такой функции, как setTitle(). Но в документах говорится, что панель сетки имеет функцию setTitle(). Я также попытался изменить заголовок, используя переменную title, например
changeTitle: function(newTitle){
this.getView('SalesGrid').title = 'title_changed';
Ни то, ни другое не работает. Пожалуйста, помогите.
this.getView('SalesGrid')
не имеет.setTitle()
. Похоже, у вас нет представления "SalesGrid" отthis.getView('SalesGrid')
. - person s.webbandit   schedule 03.09.2012this.query('SalesGrid')[0]
илиthis.getComponent(0)
вместоthis.getView('SalesGrid')
даст вам сетку продаж... или @webbandit, его решение еще лучше с использованием контроллера... - person VDP   schedule 03.09.2012