Чтобы создать объект NativeMenu, который будет служить корневым меню, воспользуйтесь конструктором NativeMenu:
var root:NativeMenu = new NativeMenu();
В случае меню программ и окон корневое меню — это строка меню, в которой могут быть только пункты, содержащие подменю. Контекстные и всплывающие меню не имеют строки меню, поэтому в их случае корневое меню может содержать не только подменю, но также команды и линии-разделители.
После создания меню можно добавлять в него пункты. Пункты отображаются в меню в том порядке, в котором они были добавлены, кроме случаев, когда пункты выводятся по индексам с помощью метода
addItemAt()
объекта меню.
Меню может относиться к программе, окну, значку, быть контекстным или всплывающим. Все эти типы описываются ниже:
Настройка меню программы или меню окна
Важно, чтобы создаваемый код был приспособлен как к меню приложения (поддерживается в Mac OS), так и к меню окна (поддерживается в других операционных системах)
var root:NativeMenu = new NativeMenu();
if (NativeApplication.supportsMenu)
{
NativeApplication.nativeApplication.menu = root;
}
else if (NativeWindow.supportsMenu)
{
nativeWindow.menu = root;
}
Примечание.
В Mac OS для каждого приложения определяется меню со стандартными элементами. Если назначить объект NativeMenu свойству
menu
объекта NativeApplication, стандартное меню будет заменено. Можно не заменять меню, а использовать стандартное.
В Adobe Flex представлен класс FlexNativeMenu, позволяющий легко создавать меню, которые работают на разных платформах. Если вы применяете Flex Framework, используйте классы FlexNativeMenu вместо класса NativeMenu.
Настройка контекстного меню интерактивного объекта
interactiveObject.contextMenu = root;
Настройка меню значка Dock или меню значка на панели задач
Важно, чтобы создаваемый код был приспособлен как к меню приложения (поддерживается в Mac OS), так и к меню окна (поддерживается в других операционных системах)
if (NativeApplication.supportsSystemTrayIcon)
{
SystemTrayIcon(NativeApplication.nativeApplication.icon).menu = root;
}
else if (NativeApplication.supportsDockIcon)
{
DockIcon(NativeApplication.nativeApplication.icon).menu = root;
}
Примечание.
В Mac OS X определено стандартное меню для значка Dock. Если назначить новый объект NativeMenu свойству menu объекта DockIcon, его пункты будут отображаться над стандартными. Удалить или изменить пункты стандартного меню нельзя.
Отображение всплывающего меню
root.display(stage, x, y);