Вот есть такая проблемка.
Задача: Заполнить контекстное меню из массива.
Но проблема в том, что когда я заполняю контекстное меню массивом в цикле for, то как будто я ничего и не меняю.
Вот примеры(я их упростил).
Пример 1.Тут все работает
Сначала я объявляю контестную менюху, потом в функции ее изменяю
Код:
//Объявляем Контекстное меню
_global.my_cm = new ContextMenu();
_global.selectMenuItem = new ContextMenuItem("Пункт", selectHandler);
_global.my_cm.hideBuiltInItems();
_global.my_cm.customItems.push(_global.selectMenuItem);
function selectHandler() {
}
this.menu = _global.my_cm;
////конец контекстное менюхе
buildMenu();
function buildMenu() {
_global.my_cm.customItems.pop();
_global.selectMenuItem2 = new ContextMenuItem("Пункт2", ddd);
_global.my_cm.customItems.push(_global.selectMenuItem2);
function ddd(){}
}
Пример 2 Но здесь я создаю в функции массив и пытаюсь его забить в менюху, ничего не пашет(
Код:
//Объявляем Контекстное меню
_global.my_cm = new ContextMenu();
_global.selectMenuItem = new ContextMenuItem("Пункт", selectHandler);
_global.my_cm.hideBuiltInItems();
_global.my_cm.customItems.push(_global.selectMenuItem);
function selectHandler() {
}
this.menu = _global.my_cm;
////конец контекстное менюхе
buildMenu();
function buildMenu() {
var myArray:Array = Array("111", "222", "333"); // масивчик забитый рыбой
for (i=0; i<myArray.length; i++) {
_global.selectMenuItem2 = new ContextMenuItem(myArray[i], ddd);
//ddd-это функция которая будет выполнятся при нажатии на пункт меню
trace(myArray[i]);
_global.my_cm.customItems.push(_global.selectMenuItem2);
function ddd() {
}
}
}
Вообщем, если было лень читать написанное выше и разбираться, задаю вопрос проще, почему в цикле не заполняется контекстное меню, и можно ли это как то обойти. Либо я вообще все не так делаю. Подскажите плиз!