2017-03-01 16 views
2

列テキストの幅に合わせて列幅を設定する方法はありますか?ユーザーは必要に応じてコンテンツを表示するために列のサイズを変更できますが、列の内容が不一致であっても、完全なヘッダーテキストを少なくとも表示します。ExtJS 6 - 自動フィッティンググリッド列ヘッダーテキスト

ありがとう

+1

私はそうは思いません。私はあなたが['Ext.util.TextMetrics'](http://docs.sencha.com/extjs/6.0.1/classic/Ext.util.TextMetrics.html)を使ってこれを自分で実装しなければならないと信じています。 – Alexander

答えて

2

はい、可能です。列のメソッドautoSize()を呼び出すことができます。 minWidthmaxWidthと組み合わせることができます。

それは内線6.2のために非常に類似していなければならないので、私は内線4.2煎茶フォーラムでthis exampleを発見した:

Ext.create('Ext.grid.Panel', { 
    title: 'Simpsons', 
    store: Ext.data.StoreManager.lookup('simpsonsStore'), 
    columns: [ 
     { text: 'Name', dataIndex: 'name', width: 150, autoSizeColumn: true }, 
     { text: 'Email', dataIndex: 'email', width: 150, autoSizeColumn: true, minWidth: 150 }, 
     { text: 'Phone', dataIndex: 'phone', width: 150 } 
    ], 
    viewConfig: { 
     listeners: { 
      refresh: function(dataview) { 
       Ext.each(dataview.panel.columns, function(column) { 
        if (column.autoSizeColumn === true) 
         column.autoSize(); 
       }) 
      } 
     } 
    }, 
    width: 450, 
    renderTo: Ext.getBody() 
}); 
関連する問題