Один из вариантов меню считается «типичным». Как и в большинстве людей, нажмите на первый пункт меню. Но есть второй вариант для внешних дел. Поэтому я хотел бы, чтобы меню кнопок имело параметр по умолчанию для тех, которые не хотят дважды щелкнуть по «типичной» опции. Я думал, что обработчик для кнопки будет:Extjs Кнопка click вызывает menuitem по умолчанию
- прекратить показ меню (я пытался
event.stopEvent()
без успеха.) - вызова обработчика для одного из пунктов меню.
Но вы все равно можете получить доступ к меню, если вы щелкнули значок выпадающего списка, который появляется рядом с кнопкой.
Fiddle here.
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');
}
});
Какой смысл иметь меню, если вы просто собираетесь вызвать один из элементов напрямую? Почему бы просто не сделать обработчик кнопки? –
Я хочу, чтобы там было меню опций (которое доступно, щелкнув значок выпадающего списка), но там будет вариант по умолчанию для ленивых. – Andrea