2013-10-21 2 views
0

나는 간단한 ExtJS 트리가 있습니다. 모든 것이 작동합니다. API에서는 제목과 다른 레이블을 재정 의하여 변경할 수 있음을 알았습니다. API는 다음과 같습니다. linkEXTJS 현지화 (클래스 재정의)

Ext.require(['*']); 
var path = ""; 

Ext.onReady(function() { 
    Ext.define('My.Tree', { 
     extend: 'Ext.tree.Panel', 
     id: 'DriveTree', 
     title: 'File Manager', 
     width: 500, 
     height: 650, 
     store: storeTree, 
     rootVisible: true, 
     renderTo: 'tree-div', 

     viewConfig: { 
      plugins: { 
       ptype: 'treeviewdragdrop', 
       appendOnly: true 
      } 
     }, 

     useArrows: true, 

     dockedItems: [{ 
      xtype: 'toolbar', 
      items: [{ 
       text: 'REFRESH', // MULTI LANGUAGE 
       id: 'connectButton' 

      }, 
       { 
        text: 'CHOOSE', // MULTI LANGUAGE 
        handler: function() { 
         Ext.Ajax.request({ 
          url: '/test.json', 
          success: function (response, opts) { 
           Ext.MessageBox.alert('text', 'text'); // multi language 

          } 
         }); 
        } 
       }] 
     }] 
    }); 
    var tree = Ext.create('My.Tree', {}); 
}); 

다른 JS 파일을 만들고 트리를 덮어 씁니다.

Ext.define('My.Tree', { 
    override: 'Ext.tree.Panel', 
    title: 'new NAME', 

}); 

그러나 이것은 작동하지 않습니다.Ext.MessageBox.alert의 텍스트를 재정의해야합니다. 내가 할 수 있을까?

My.Tree 패널에서 제목을 제거하면 작동합니다.

+0

가 작동! – grep

답변

1

트리를 재정의했기 때문에 .Panel, 하위 클래스가 아닙니다. 따라서 Ext.tree.Panel을 무시하므로 titleMy.Tree에 우선합니다.

대신 : 내가 예를 들어, "제목 : '파일 관리자'를"제거하면

Ext.define('MyApp.locale.fr.Tree', { 
    override: 'My.Tree', 
    title: 'Bonjour' 
}); 
+0

감사합니다! 내 마지막 코멘트 질문을 참조하십시오 : http://stackoverflow.com/questions/19491117/dockeditems-text-from-panel – grep