2

我有以下选项卡定义:

var viewport = new Ext.Viewport({
      layout: 'fit',
      items: {
          xtype: 'grouptabpanel',
          tabWidth: 150,
          id: 'tabPanel',
          activeGroup: undefined,
          items: [aItems1]
      }
  });

whereaItems1是一个数组数组,例如:

aItems1[0] = {
    activeTab: 1,
    items: [{
            title: 'foo',
            tabTip: 'foo'
        }, {
            id: 'main-foo1',
            title: 'foo1',
            tabTip: 'foo1',
            iconCls: 'x-icon-page',
            style: 'padding: 10px;',
            layout: 'fit',
            items: [new Inp.Demands()]
        },
        {
            id: 'main-foo2',
            title: 'foo2',
            tabTip: 'foo2',
            iconCls: 'x-icon-exit'
        }
    ]
};

我需要activate制表符main-foo2

var tabPanel = Ext.getCmp('tabPanel');
tabPanel.setActiveTab('main-foo2');

但是这段代码并没有改变任何东西。

使用tabPanel.setActiveTab(NUMBER),我可以更改活动组,但是应该怎么做才能打开确切的选项卡?

4

2 回答 2

1

看起来这个实现基本上(但实际上不是)使用了两个 TabPanel。因此,为了设置活动选项卡,您setActiveGroup还需要setActiveTab为该组设置。

因此,鉴于exactTabId您要打开的选项卡,这样的事情可能会起作用:

var tab = Ext.getCmp(exactTabId);
var tabGroup = tab.ownerCt;
var groupingPanel = tabGroup.ownerCt;

groupingPanel.setActiveGroup(tabGroup);
tabGroup.setActiveTab(tab);

我使用GroupTabPanelGroupTab作为可用方法调用的指南。

于 2012-04-29T03:12:23.767 回答
-3
aItems1[0] = {
            activeGroup:1, //该属性用于激活特定项
            项目: [
                    {
                     标题:“富”,
                     选项卡提示:'foo'
                },{
                     id:'main-foo1',
                     标题:'foo1',
                     tabTip: 'foo1',
                     iconCls: 'x-icon-page',
                     样式:'填充:10px;',
                     布局:'适合',
                     项目:[新的 Inp.Demands()]
                },{
                     id:'main-foo2',
                     标题:'foo2',
                     tabTip: 'foo2',
                     iconCls: 'x-icon-exit'
            }]
};
于 2012-11-28T16:31:50.167 回答