0
我觉得这个问题很愚蠢,但我花了2个小时试图解决它,没有喜悦。NativeMenu没有出现在Windows上
我只是试图让一些本地菜单显示在Windows上。我编写了我自己的代码,可以在OSX上运行,但是没有菜单出现在窗口中,所以我搜索了一些广告已经测试过的例子,包括this one from Adobe.
没有什么特别的,我在做什么。 NativeWindow系统镶边是标准的,等等。我正在用Windows 7在运行VMWare的OSX上测试这一点 - 但大多数情况似乎没问题。我放入了一个跟踪语句,表明该菜单是在Windows上创建的。
有谁知道什么可以防止在Flex的WindowAplication中在Windows上创建菜单?
private function initMenu():void
{
if(NativeWindow.supportsMenu){
stage.nativeWindow.menu = createAppMenu();
} else if(NativeApplication.supportsMenu){
NativeApplication.nativeApplication.menu = createAppMenu();
}
}
private function createAppMenu():NativeMenu
{
var myMenu:NativeMenu = new NativeMenu();
var nameMenu:NativeMenuItem = myMenu.addItem(new NativeMenuItem("Window World"));
var aboutMenu:NativeMenu = new NativeMenu();
var aboutMenuItem:NativeMenuItem = aboutMenu.addItem(new NativeMenuItem("About"));
nameMenu.submenu = aboutMenu;
var fileMenu:NativeMenuItem = myMenu.addItem(new NativeMenuItem("File"));
fileMenu.submenu = buildFileMenu();
return myMenu;
}
private function buildFileMenu():NativeMenu
{
var fileMenu:NativeMenu = new NativeMenu();
var closeAppMenu:NativeMenuItem = fileMenu.addItem(new NativeMenuItem("Exit"));
closeAppMenu.addEventListener(Event.SELECT , closeApp);
return fileMenu;
}