我的应用程序顶部有一个菜单栏,每个菜单项都有一个名为mnemonic index
的属性。它的值通常为-1。文档确实提供了任何帮助。什么是与菜单项相关的助记符索引及其用途是什么?
我正在从事的环境是Flex和Adobe AIR。它是NativeMenu和NativeMenuItem的属性。
答案 0 :(得分:2)
助记符是单键,不与CTRL,ALT或SHIFT键组合使用,用于在打开的菜单中激活菜单命令。它们是Windows上包含下划线的菜单项中的字符,即R,G,B:
菜单项助记符仅与Windows相关,OS-X不支持菜单项中的助记符。
注意:我知道在Windows 7(及以下版本)上它们受支持,但不确定它们是否在Windows 8.1 / 10下得到支持(显示):
var root:NativeMenu = new NativeMenu();
var stackRoot:NativeMenuItem = root.addSubmenu(new NativeMenu(), "Stack");
var stack:NativeMenu = new NativeMenu();
stackRoot.submenu = stack;
var overflow1:NativeMenuItem = new NativeMenuItem("Overflow1");
overflow1.mnemonicIndex = 1;
overflow1.keyEquivalent = "A";
overflow1.addEventListener(Event.SELECT, selectCommand);
stack.addItem(overflow1);
var overflow2:NativeMenuItem = new NativeMenuItem("Overflow2");
overflow2.mnemonicIndex = 2;
overflow2.keyEquivalent = "B";
overflow2.addEventListener(Event.SELECT, selectCommand);
stack.addItem(overflow2);
var overflow3:NativeMenuItem = new NativeMenuItem("Overflow3");
overflow3.mnemonicIndex = 3;
overflow3.keyEquivalent = "C";
overflow3.addEventListener(Event.SELECT, selectCommand);
stack.addItem(overflow3);
if (NativeApplication.supportsMenu) {
NativeApplication.nativeApplication.menu = root;
} else {
stage.nativeWindow.menu = root;
}