菜单选项之一被认为是“典型的”。就像大多数人会点击第一个菜单项一样。但是对于那些外部情况,还有第二种选择。因此,我想要一个按钮菜单,对于那些不想为“典型”选项单击两次的人来说,它有一个默认选项。我在想按钮的处理程序会:
- 停止显示菜单(我试过
event.stopEvent()
但没有成功。) - 调用菜单项之一的处理程序。
但是,如果您单击按钮旁边出现的下拉图标,您仍然可以访问该菜单。
在这里拉小提琴。
Ext.create('Ext.button.Button', {
text: 'Pick One',
menu: {
items: [{
text: 'Thing 1!',
handler: function () {
alert('foo');
}
}, {
text: 'Thing 2!',
handler: function () {
alert('bar');
}
}]
},
handler: function (theButton, event) {
//stop the menu from showing
//event.stopEvent(); //try to stop showing menu, but no luck
//invoke the handler for menu item 1
//try to get at handler for menuitem programmatically
//theButton.menu.items.getAt(0).???
//i'd settle for hard-coding the function
//alert('foo');
}
});