flex: ссылка на вызывающий объект из popUp - PullRequest
1 голос
/ 21 мая 2011

У меня есть ситуация, когда у меня есть несколько изображений на экране с присвоенными им бизнес-свойствами (стоимость, количество, качество). Когда я нажимаю на них, необходимо открыть всплывающее окно, в котором можно изменить свойства элемента под изображением. Как мне ссылаться а) объект, вызвавший открытие всплывающего окна б) свойства объекта, размещенного в массиве - как для начального просмотра, так и для изменения

У меня включены изображения для двойного щелчка следующим образом

newImage.doubleClickEnabled=true;
newImage.addEventListener(MouseEvent.DOUBLE_CLICK,createModifyPopUp);

В настоящее время я вызываю всплывающее окно следующим образом

private function createModifyPopUp(evt:MouseEvent):void{
var mywin1:Modify=PopUpManager.createPopUp(this,Modify,true) as Modify;
PopUpManager.centerPopUp(mywin1);
}

Кажется, я не передаю событие во всплывающее окно. Есть ли способ, которым я могу работать на основе изображения, щелкнувшего в исходном приложении, для создания и захвата информации в модификации.

1 Ответ

4 голосов
/ 21 мая 2011

просто используйте PopUpManager.addPopup вместо PopUpManager.createPopUp

Ваш пример должен выглядеть следующим образом:

//define properties in the Modify class (Modify.as3 or Modify.mxml)
public var someData: Array;
public var eventTarget: Object;


// listener
private function createModifyPopUp(evt:MouseEvent):void{
   var modify: Modify = new Modify();
   // pass parameters to the instance of Modify class
   modify.someData = arr;
   modify.eventTarget = evt.target;

   // show popup
   PopUpManager.addPopUp(modify, this, true);
   PopUpManager.centerPopUp(modify);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...