ExtJS 4:防止自动计算宽度

时间:2012-03-12 09:15:56

标签: javascript tabs extjs4 width

我在网格面板的Ext.tab.Bar内使用tbar

我的代码是:

...
tbar: [
    ...
    "->",
    this._getTabbar()
]
// where this._getTabbar() is:
GridPanel.prototype._getTabbar = function() {
    return Ext.tab.Bar({
        width: 850,
        items: [
            {text: "Grid's Tab #1", closable: false},
            {text: "Grid's Tab #2", closable: false},
            {text: "Grid's Tab #3", closable: false},
            ...
            {text: "Grid's Tab #N", closable: false}
        ]
    });
}

因此,我得到了正确的顶部工具栏,但标签栏中的按钮太短,我看不到他们的标签。这意味着选项卡按钮 Grid的选项卡#1 显示为 Grid的T ...

我尝试手动将width参数添加到标签配置:

{text: "Grid's Tab #N", ..., width: 150}

没有,ExtJS自动为每个按钮计算相同的宽度。我试着设置flex: false并且再没有设置。

我想问你的是我应该怎样做以防止类似柔性宽度的计算?如果我使用“具有长 - 长 - 长标签的按钮”创建100500按钮,我希望在标签栏的所有按钮中看到全文。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我有点困惑。网格面板tbar配置用于工具栏。 tbar的配置通常是:

tbar: [
  { xtype: 'button', text: 'Button 1' }
]

工具栏不仅限于按钮。以下是一个非常繁忙的工具栏示例,其中包含各种字段http://jsfiddle.net/dbrin/PhAbR/embedded/result/

另一方面,标签栏用于标签面板。这是文档说的:

  

“TabBar在内部由TabPanel使用,通常不需要   手动创建“

不是你不能:)那么,你是否试图用标签创建一个自定义组件?如果是这样,为什么不使用常规选项卡面板?