我要给一个tree添加一个右键菜单。但是出现了几个问题。
Extjs4.0 树添加右键菜单 。
//创建一个上下文菜单
var rightClick = Ext.create('Ext.menu.Menu', {
id : 'rightClickCont',
floating : false,
plain : true,
items : [{
id : 'rMenu1',
text : '新建对象关系/对象',
handler : function() {
Ext.MessageBox.alert('Woring', '功能暂未开放...')
}
}, {
id : 'rMenu2',
text : '复制',
handler : function() {
Ext.MessageBox.alert('Woring', '功能暂未开放...')
}
}, {
id : 'rMenu3',
text : '打开',
handler : function() {
Ext.MessageBox.alert('Woring', '功能暂未开放...')
}
}, {
id : 'rMenu4',
text : '删除',
handler : function() {
Ext.MessageBox.alert('Woring', '功能暂未开放...')
}
}, {
id : 'rMenu4',
text : '修改',
handler : function() {
Ext.MessageBox.alert('Woring', '功能暂未开放...')
}
}, {
id : 'rMenu4',
text : '下移',
handler : function() {
Ext.MessageBox.alert('Woring', '功能暂未开放...')
}
}]
});
// 需要添加菜单的菜单树
var menutree = Ext.create('Ext.tree.Panel', {
width : '100%',
height : 150,
store : store,
rootVisible : false,
autoScroll : true,
items : []
});
// 创建一个树的上下文菜单函数
function rightClickFn(menutree, record, item, index, e) {
e.preventDefault();
e.stopEvent();
//EXT3.0的出发显示菜单的事件是 。rightClick.show(e.getXY());
//4.0 木有这个方法。只有showBy(),和show()
//还有这几个参数有点不明白。
rightClick.show();
}
//给树添加监听。
menutree.addListener('itemcontextmenu', rightClickFn, this);
代码应该木有错。
主要是树的右键时间触发方法好像不对。求解释。
有熟悉可以讲解一下吗。
麻烦了。