I'm trying to add several folder items to the ContextMenu items, but
Flex doesn't seem to recognize them. I thought I could do something like
---------------------------------
mainMenu = new ContextMenu();
mainMenu.hideBuiltInItems();
var item:ContextMenuItem = new ContextMenuItem("Item");
menu.customItems.push(item);
var submenu:ContextMenu = new ContextMenu("Menu 1");
var item2:ContextMenuItem = new ContextMenuItem("Menu 1 -> Item");
submenu.customItems.push(item2);
menu.customItems.push(submenu);
---------------------------------------------
but you can't give ContextMenu a constructor. I can't find anything
searching for sub menus on the ContextMenu. I've seen a built-in
sub-menu for Quality with menu-items underneath as Low, Medium, and
High but can't replicate this.
I've also tried the following but no luck...
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:Script>
<![CDATA[
import mx.controls.*;
// Method to create an Array-based menu.
private function createAndShow():void {
var mainMenu:ContextMenu = new ContextMenu();
mainMenu.hideBuiltInItems();
var item:ContextMenuItem = new ContextMenuItem("Item");
mainMenu.customItems.push(item);
var myMenu:Menu = Menu.createMenu(null, menuData, true);
mainMenu.customItems.push(myMenu);
Application.application.contextMenu = mainMenu;
}
// The Array data provider
[Bindable]
public var menuData:Array = [{label: "MenuItem A", children: [
{label: "SubMenuItem A-1", enabled: false},
{label: "SubMenuItem A-2", type: "normal"}
]}
];
]]>
</mx:Script>
<!-- Button control to create and open the menu. -->
<mx:Button x="300" y="10" label="Change Menu"
click="createAndShow();"/>
</mx:Application>
Any suggestions?