function createMenu(){
//创建一个菜单
var myMenu = new Ext.menu.Menu({
items:[{
text: '右键快捷方式1',
menu: [{
text: '右键子菜单1'
},{
text: '右键子菜单2'
}]
},{
text: '右键快捷方式2'
}]
}) ;
//因为每个树中由N个节点组成的,所以要创建树,必须创建树所包含的节点(树必须有一个或多个根节点).
var vRoot = new Ext.tree.TreeNode({text: '根节点1'}) ;//创建节点
var vNode1 = new Ext.tree.TreeNode({text: '子节点1'}) ;//创建节点
vNode1.appendChild(new Ext.tree.TreeNode({text: '子节点11'}));
vNode1.appendChild(new Ext.tree.TreeNode({text: '子节点12'}));
var vNode2 = new Ext.tree.TreeNode({text: '子节点1'}) ;//创建节点
vRoot.appendChild(vNode1) ;//在vRoot根节点上创建子节点.
vRoot.appendChild(vNode2) ;//在vRoot根节点上创建子节点.
var obj = {
title: '我的Menu练习',
renderTo: document.body,
height: 300,
width: 600,
root: vRoot,
tbar:[{
text: '文件',
menu: {items:[{
text: '打开',
icon: '../images/open.gif'
},{
text: '保存',
icon: '../images/save.gif'
},'-',{
text: '另存为...',
handler: function(b){
var win = new Ext.Window({
title: '另存为对话框',
width: 200,
height: 200,
html: '可以在此处进行其他操作'
});
win.show() ;
}
}]}
},'-',{//在两个按钮之间添加一条分隔线
text: '编辑'
},'->',{//右顶格显示'帮助'按钮
text: '帮助'
}],
listeners: {//添加监听器,实现右键Tree显示定义菜单myMenu
contextmenu: function(n,e){
myMenu.showAt(e.getXY()) ;
}
}
};
var myPanel = new Ext.tree.TreePanel(obj) ;
}
Ext.onReady(createMenu);//创建动态树
转载于:https://www.cnblogs.com/dule/archive/2011/12/25/2301187.html