extjs 拉伸垂直标签栏中的项目以适应边框布局的西部区域
extjs Stretch items in vertical tab bar to fit west region of border layout
我有一个垂直标签栏,我希望 tabitem 水平拉伸以适合我的边框布局的西部区域。我在 sencha fiddler 中拥有一切,但我不知道如何共享 link 以便每个人都可以看到我的代码。任何想法如何解决这个...并分享我的小提琴手?
Ext.application({
name: 'Fiddle',
launch: function() {
//Ext.Msg.alert('Fiddle', 'Welcome to Sencha Fiddle!');
var mainVP = Ext.create(Ext.container.Viewport, {
layout: 'border',
defaults: {
style: 'border: 1px solid black'
},
items: [{
html: 'hio',
region: 'center',
xtype: 'tabpanel',
title: 'main tab panel'
}, {
html: 'north',
region: 'north',
height: 50,
title: 'this is my header area'
}, {
html: 'east',
region: 'east',
width: 50
}, {
html: 'west',
region: 'west',
width: 250,
title: 'westregion',
xtype: 'NavigationBar'
//items: [{
//xtype: 'button',
//text: 'click me',
//listeners: {
// click: function(btn) {
//Ext.Msg.alert('Fiddle', 'Welcome to Sencha Fiddle!');
// btn.up('viewport').down('tabpanel').add({
// xtype: 'clientDetails'
// });
//}
//}
//}]
}]
});
}
});
Ext.define('Ext.test1.NavigationBar', {
extend: 'Ext.tab.Panel',
alias: 'widget.NavigationBar',
tabBar: {
//width: 250,
//minTabWidth: 130,
//maxTabWidth: 240,
orientation: 'vertical',
//defaults: {
// flex: 1
//}
//dock: 'left',
//layout: {
// pack: 'center'
//}
},
layout: 'fit',
tabPosition: 'left',
//titleRotation: 0,
tabRotation: 0,
items: [{
title: 'Home',
iconCls: 'fa-home',
layout: 'fit'
// The following grid shares a store with the classic version's grid as well!
}, {
title: 'Users',
iconCls: 'fa-user'
//layout: 'fit'
}, {
title: 'Groups',
iconCls: 'fa-users'
//layout: 'fit'
}, {
title: 'Settings',
iconCls: 'fa-cog'
//layout: 'fit'
}]
});
我稍微编辑了你的 fiddle - this 看起来/工作起来像你想要完成的事情吗?
我删除了 westregion
,并将中心区域的 xtype 设置为 NavigationBar
。
在 users
选项卡上,我将联系方式添加为项目
{
title: 'Users',
iconCls: 'fa-user',
items: [{
xtype: 'clientDetails'
}]
}
如果您使用边框布局,则不需要所有个区域,您只需要个中心一个 - 参见 http://docs.sencha.com/extjs/6.0.2/classic/Ext.layout.container.Border.html
我有一个垂直标签栏,我希望 tabitem 水平拉伸以适合我的边框布局的西部区域。我在 sencha fiddler 中拥有一切,但我不知道如何共享 link 以便每个人都可以看到我的代码。任何想法如何解决这个...并分享我的小提琴手?
Ext.application({
name: 'Fiddle',
launch: function() {
//Ext.Msg.alert('Fiddle', 'Welcome to Sencha Fiddle!');
var mainVP = Ext.create(Ext.container.Viewport, {
layout: 'border',
defaults: {
style: 'border: 1px solid black'
},
items: [{
html: 'hio',
region: 'center',
xtype: 'tabpanel',
title: 'main tab panel'
}, {
html: 'north',
region: 'north',
height: 50,
title: 'this is my header area'
}, {
html: 'east',
region: 'east',
width: 50
}, {
html: 'west',
region: 'west',
width: 250,
title: 'westregion',
xtype: 'NavigationBar'
//items: [{
//xtype: 'button',
//text: 'click me',
//listeners: {
// click: function(btn) {
//Ext.Msg.alert('Fiddle', 'Welcome to Sencha Fiddle!');
// btn.up('viewport').down('tabpanel').add({
// xtype: 'clientDetails'
// });
//}
//}
//}]
}]
});
}
});
Ext.define('Ext.test1.NavigationBar', {
extend: 'Ext.tab.Panel',
alias: 'widget.NavigationBar',
tabBar: {
//width: 250,
//minTabWidth: 130,
//maxTabWidth: 240,
orientation: 'vertical',
//defaults: {
// flex: 1
//}
//dock: 'left',
//layout: {
// pack: 'center'
//}
},
layout: 'fit',
tabPosition: 'left',
//titleRotation: 0,
tabRotation: 0,
items: [{
title: 'Home',
iconCls: 'fa-home',
layout: 'fit'
// The following grid shares a store with the classic version's grid as well!
}, {
title: 'Users',
iconCls: 'fa-user'
//layout: 'fit'
}, {
title: 'Groups',
iconCls: 'fa-users'
//layout: 'fit'
}, {
title: 'Settings',
iconCls: 'fa-cog'
//layout: 'fit'
}]
});
我稍微编辑了你的 fiddle - this 看起来/工作起来像你想要完成的事情吗?
我删除了 westregion
,并将中心区域的 xtype 设置为 NavigationBar
。
在 users
选项卡上,我将联系方式添加为项目
{
title: 'Users',
iconCls: 'fa-user',
items: [{
xtype: 'clientDetails'
}]
}
如果您使用边框布局,则不需要所有个区域,您只需要个中心一个 - 参见 http://docs.sencha.com/extjs/6.0.2/classic/Ext.layout.container.Border.html