2011-09-22 8 views
0

に重なるように2つの項目が原因である私の追加アイテムコード:呼び出しitems.add方法は二回カードここ

myapp.cards.vehicleInfo.items.add(
     new Ext.List({ ...}) 
) 

この後、私はその後、そうした場合:

myapp.cards.vehicleInfo.items.add(
     new Ext.Panel(
     {html: 'test' } 
     ) 
    ); 

パネル付き私のリストの上(重なり)には、その下に垂直に表示されるのではなく、「テスト」が表示されます。私は2つの項目を追加する間にcomponenet dolayoutをやってみました。

アイデア?私が上記のいずれかを行うだけであれば、それは期待どおりに機能しますが、私が一緒にすると、上記の動作につながります。

ありがとうございました

答えて

1

パネルを下にドッキングする必要があります。

myapp.cards.vehicleInfo.dockedItems.add(new Ext.Panel(
    {html: 'test' } 
    ) 
); 

更新

Ext.regModel('Contact', { 
    fields: ['firstName', 'lastName'] 
}); 

var store1 = new Ext.data.JsonStore({ 
    model : 'Contact', 
    data: [ 
     {firstName: 'Tommy', lastName: 'Maintz'}, 
     {firstName: 'Rob',  lastName: 'Dougan'}, 
     {firstName: 'Ed',  lastName: 'Spencer'}, 
     {firstName: 'Jamie', lastName: 'Avins'}, 
     {firstName: 'Aaron', lastName: 'Conran'}, 
     {firstName: 'Dave', lastName: 'Kaneda'}, 
     {firstName: 'Michael', lastName: 'Mullany'}, 
     {firstName: 'Abraham', lastName: 'Elias'}, 
     {firstName: 'Jay',  lastName: 'Robinson'}, 
     {firstName: 'Tommy', lastName: 'Maintz'}, 
     {firstName: 'Rob',  lastName: 'Dougan'}, 
     {firstName: 'Ed',  lastName: 'Spencer'}, 
     {firstName: 'Jamie', lastName: 'Avins'}, 
     {firstName: 'Aaron', lastName: 'Conran'}, 
     {firstName: 'Dave', lastName: 'Kaneda'}, 
     {firstName: 'Michael', lastName: 'Mullany'}, 
     {firstName: 'Abraham', lastName: 'Elias'}, 
     {firstName: 'Jay',  lastName: 'Robinson'} 
    ] 
}); 

new Ext.Application({ 
    launch: function() { 
     var panel = new Ext.Panel({ 
      fullscreen: true, 
      id:'thePanel', 
      layout: 'vbox', 
      style: 'background-color:darkblue', 
      scroll:'vertical' 
     }); 
//do this in your dynamically called function 
    var list = new Ext.List({ 
     id :'theList', 
     itemTpl : '{firstName} {lastName}', 
     store: store1, 
     width: '100%', 
     scroll:false 
    }); 


var smallPanel = new Ext.Panel({layout: 'auto',width:'100%',height:200,style:'background-color:darkgreen;color:white',html:"Hello I'm the panel"}); 
    panel.items.add(list); 
    panel.items.add(smallPanel); 
    panel.doLayout();    
    } 
}); 
+0

回答ありがとうございますが、まだ重複しています。私が追加している最初の項目は、ロードされているストアにリンクされているリストです。また、店舗からのコールバックにコードを追加しようとしました。店舗がロードされた後でもドッキングされるだけですが、まだ成功しません。 –

+0

私はパネルにconfigオプションdock:bottomを追加しました。これはカードの一番下に表示されます。残りの問題は、その上のリスト項目と共にスクロールしないということです。これはツールバーのように静的です。 –

+0

私はあなたが達成しようとしていることを知らないが、それが何であれ間違っている。 – ilija139

1

はあなたがパネルを追加するためにどのコンテナ内のレイアウトオプションをチェックする必要があります。私は先週同じ問題を抱えていて、レイアウトプロパティをレイアウトに設定しました:{type: 'vbox'、align: 'stretch'}は素晴らしいレイアウトを提供しました。私はこれが問題であるかどうかは分かりませんが、とにかく試してみてください:)

関連する問題