2009-05-06 78 views
13

ExtJsToolBar有多行可能吗?我想在第一行添加一些控件,在第二行添加3个ExtJsButtons。 工具栏是面板的顶部工具栏。ExtJS多行工具栏

回答

16

您没有提到小部件您要添加工具栏什么,但一般而言,您可以,只要你想添加尽可能多的工具栏:如果你喜欢额外的工具栏添加到网格的顶部

var panel = new Ext.Panel(); 
var tool1 = new Ext.Toolbar({...}); 
var tool2 = new Ext.Toolbar({...}); 

panel.add(tool1); 
panel.add(tool2); 
... 

,然后找到网格的面板组件并添加工具栏。它看起来是这样的(未测试):

tPanel = grid.getTopToolbar().ownerCt; // get top toolbar's container panel 
tPanel.add(anotherToolbar); 
+0

第二个例子效果很好,谢谢! – Andron 2014-01-31 16:28:15

0

我不确定,不管它是否可行,但你可以随时做的事情是将北部地区(如果使用边界布局)分成两行,使用行布局。然后,您可以将一个工具栏添加到顶部行,将另一个工具栏添加到第二行。

17

不知道关于早期版本,但ExtJS的4.0当你定义的网格,你可以做这样的:

dockedItems: [ 
    { 
     xtype: 'toolbar', 
     dock: 'top', 
     items: [ 
      {text:'Toolbar 1 Button 1'}, 
      {text:'Toolbar 1 Button 2'} 
     ] 
    }, 
    { 
     xtype: 'toolbar', 
     dock: 'top', 
     items: [ 
      {text:'Toolbar 2 Button 1'} 
     ] 
    } 
], 

http://dev.sencha.com/deploy/ext-4.0.2a/docs/#/api/Ext.panel.Panel

2

什么dockedItems其太简单了。

var toolbar1 = { 
    xtype : 'toolbar', 
    dock : 'top', // bottom, right, left 
    items: [...] 
}; 

var toolbar2 = { 
    xtype : 'toolbar', 
    dock : 'top', 
    items: [...] 
}; 

Ext.create('Ext.panel.Panel', { 
    dockedItems: [toolbar1,toolbar2] 
}); 

我知道它很旧的和已经回答了,可能是它可以帮助别人:)