Сразу прога:
Ext.onReady(function(){
//модель
Ext.define('Task',
{
extend: 'Ext.data.Model',
fields: [
{name: 'task', type: 'string'},
{name: 'user', type: 'string'},
{name: 'duration', type: 'string'}]
});
//стора
var store = Ext.create('Ext.data.TreeStore',
{
model: 'Task',
autoLoad: true,
proxy:
{
type: 'ajax',
url: 'treedata.php',
expanded: true
},
folderSort: true
});
//древовидная панель
Ext.create('Ext.tree.Panel',
{
title: 'example',
width: 600,
height: 400,
renderTo: Ext.getBody(),
//itemSelector: 'div.thumb-wrap',
rootVisible: false,
store: store,
//tpl: Ext.create('Ext.XTemplate', tpl)
columns: [
{
xtype: 'treecolumn',
text: '№',
width: 100,
sortable: true,
dataIndex: 'task',
renderer: function(value, metaData, record, rowIndex, colIndex, store, view)
{
return value;
}
},
{
text: 'Поле 2',
flex: 1
},
{
text: 'Поле 3',
width: 300
}]
});
});
Вот скрин:
Задача в следующем. есть каталоги и файлы в панеле. Когда идет каталог, то записть есть только в первом столбце, остальные пустные. но первый столбец !!обязательно!! узкий, поэтому запись не вмещается. их либо объединять надо при рендере, но у меня это не вышло либо искать другой выход.. Когда идет файл, то будет заполнено все три поля, в первом будет идти номер по порядку..
Либо надо Ext.tree.View использовать.. но у меня не получилось.. буду рад любым предложениям..
И если можно на примере рассказать как работает tree.view