2015-04-29 2 views
0

Я очень новичок в JS, поэтому, пожалуйста, простите меня, если я задаю очень простой вопрос.изменение цвета фона в дереве в extjs4

Я хочу изменить цвет фона узла в дереве, который у меня есть.

Ext.application({ 
      name: 'Autopsy', 
      launch: function() { 
      Ext.create('Ext.container.Viewport', { 
        layout: 'border', 
        items:[ { 
         ...... 
         ....... 
        }, { 
         region:'west', 
         collapsible: true, 
         resizable: true, 
         title: 'Threads (Total: {{ num_threads|replace("\n","\\n") }})', 
         width: 200, 
         layout: 'fit', 
         items: [ 
          { 

           xtype: 'treepanel', 
           rootVisible: false, 
           store: threadStore, 
           lines: false, 
           useArrows: true, 
          } 
         ] 
        }, { 
         ..... 
         ..... 

ThreadSotre является

  var threadStore = Ext.create('Ext.data.TreeStore', { 
           root: { 
            text: 'Root', 
            expanded: true, 
            children: [ 
             {% for thread in threadIds %} 
             { text: "Thread {{ thread }}", leaf:     true }, 
             {% endfor %} 
             { text: "Thread Ex", expanded: true, children: [ 
              { text: "funcTop", leaf: true }, 
              { text: "funcBottom", leaf: true}, 
              { text: "test", leaf: true} 
             ] }, 
            ] 
           } 
          }); 

это дает мне выход, как показано ниже

резьбы 6

резьбы 5

резьбы 4

T hread 3

Тема 2

Thread 1

Я хочу фоновую цвет "Тема 1" быть красным. Как мне это сделать ?

ответ

0

Вы можете использовать средство рендеринга treecolumn для изменения стиля узла. Пример кода выглядит следующим образом.

xtype: 'treepanel', 
    rootVisible: false, 
    store: threadStore, 
    lines: false, 
    useArrows: true, 
    columns: [{ 
      xtype : 'treecolumn', 
      text: 'Email', 
      dataIndex: 'name', 
      flex: 1, 
      renderer: function (value, metaData) { 
       //TODO Apply your logic here... 
       if(value==='Thread1'){ 
        metaData.tdAttr = 'bgcolor="red"'; 
       } 
       return value; 
      } 
     } 
Смежные вопросы