extjs4 – самый простой способ включить/отключить вкладки на панели вкладок?

Есть ли простой способ включить/отключить вкладки на панели вкладок во время выполнения?

На данный момент делаю:

Ext.getCmp('thetabpanel).getTabBar().items.get(1).setDisabled(true);

Это кажется очень сложным, но я не могу найти очевидный метод на уровне панели вкладок, чтобы сделать это напрямую.

Спасибо


person Ben    schedule 14.09.2011    source источник
comment
Я думаю, что ваш подход - единственный способ сделать это.   -  person Molecular Man    schedule 14.09.2011
comment
@ Молекула. Спасибо за ваш вклад .. Может быть, поместите это как ответ, если вы уверены, что другого пути нет.   -  person Ben    schedule 14.09.2011
comment
Я бы не. я не совсем уверен   -  person Molecular Man    schedule 14.09.2011


Ответы (3)


Вы можете использовать метод вниз, чтобы получить вкладку,

Ext.getCmp('thetabppanel').down('#itemIdForTheTab').setDisabled(true);

проверьте документацию на наличие http://dev.sencha.com/deploy/ext-4.0.2a/docs/#/api/Ext.tab.Panel-method-down

person nscrob    schedule 14.09.2011
comment
Спасибо. Это выглядит немного проще. Я все еще удивлен, что на уровне панели нет простого средства доступа к вкладкам по индексу. - person Ben; 14.09.2011

Вы можете получить доступ к свойству items (ведьма — это MixedCollection) и использовать метод getAt():

Ext.getCmp('thetabpanel').items.getAt(1).setDisabled(true);

См. документацию ссылка

редактировать: опечатки

person speznaz    schedule 15.09.2011
comment
Да, get/getAt, это то, что я использовал. Приятно знать, что мне не нужно сначала проходить через getTabBar() (как ни странно, я думал, что попробовал вашу версию, но не смог заставить ее работать, хотя теперь все в порядке). Спасибо - person Ben; 15.09.2011
comment
Все еще поражен тем, что в версии 4 в ext нет метода enableTab на уровне панели вкладок. - person Ben; 15.09.2011

Вы также можете использовать новые функции запроса:

var panel = Ext.ComponentQuery.query('thetabpanel panel[id="#itemIdForTheTab"]')[0];
panel.setDisabled(true);

См. Ext API в ComponentQuery для более подробной информации.

person suknic    schedule 16.09.2011