我想在 ExtJS 4 中使用包含我自己的组件(或 XTemplete)的大标签制作一个标签面板,有什么方法可以实现吗?谢谢
更新 :可以通过此链接更改自定义选项卡的高度
我想在 ExtJS 4 中使用包含我自己的组件(或 XTemplete)的大标签制作一个标签面板,有什么方法可以实现吗?谢谢
更新 :可以通过此链接更改自定义选项卡的高度
签出Ext.tab.Bar
和Ext.tab.Tab
。您可以通过Ext.tab.Panel#tabBar
config 属性将选项卡栏配置传递给面板。
var tabpanel = {
xtype: 'tabpanel',
tabBar: {
defaultType: 'xxx'
}
}
然后,您使用alias: 'widget.xxx
. 默认Ext.tab.Tab
是Ext.button.Button
自定义样式的子类。
用一个不仅仅是一个子类的组件替换它Ext.tab.Tab
可能需要相当多的工作。您需要确保组件的行为正确,并且 CSS 样式看起来不错。
一种更快但不太灵活的方法是子类化Ext.tab.Tab
并更改其外观以满足您的需求。
更新
不幸的是,ExtJsExt.tab.Panel
为每个正在添加/创建的选项卡明确设置了 xtype。从Ext.tab.Panel
onAdd: function(item, index) {
var me = this,
cfg = item.tabConfig || {},
defaultConfig = {
xtype: 'tab', // <= XXX
card: item,
disabled: item.disabled,
closable: item.closable,
但正如您所看到的,可以tabConfig
在选项卡面板的项目上添加 a,这将优先于此处定义的 defaultConfig。因此,一种简单直接的方法是在选项卡面板的每个子项上定义一个 tabConfig
tabConfig: {
xtype: 'xxx'
}