2009-05-06 18 views
13

複数行のExtJsToolBarを使用することはできますか?最初の行にはいくつかのコントロールが、2番目には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); 
... 

あなたがグリッドの先頭に余分なツールバーを追加したい場合グリッドのパネルコンポーネントを見つけてツールバーを追加します。それは(テストしていない)、このようになります。これはあなたが探しているが、ツールバーは、内線3.0に刷新されたまさにあれば

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

2番目の例ではうまく機能し、感謝! – Andron

0

可能かどうかはわかりませんが、いつでもできることは、(境界線レイアウトを使用する場合など)北領域を行レイアウトを使用して2つの行に分割することです。一番上の行にツールバーを追加し、もう一つの行にツールバーを追加することができます。

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] 
}); 

私はそのかなり古い知っていて、すでに答え、それが誰かを助けることができるかもしれ:)

関連する問題