|
|
|||||
Регистрация: Oct 2006
Адрес: Волгодонск
Сообщений: 182
|
Чему равно e.target ?
Добрый день. Сначала немного истории...
Имеется несколько спрайтов и ссылка на один var buttonOtkrit:Sprite=new Sprite(); var buttonPoisk:Sprite=new Sprite(); var buttonRedaktirovanie:Sprite=new Sprite(); //указатель на выбранное меню,окно, по дефолту - ОТКРЫТЬ var selectedMenuButtun:Sprite=buttonOtkrit; konteinerWindow.addChild(buttonOtkrit); konteinerWindow.addChild(buttonPoisk); konteinerWindow.addChild(buttonRedaktirovanie); buttonOtkrit.addEventListener(MouseEvent.CLICK,clickOnMenuButtonListener); buttonPoisk.addEventListener(MouseEvent.CLICK,clickOnMenuButtonListener); buttonRedaktirovanie.addEventListener(MouseEvent.CLICK,clickOnMenuButtonListener); //Трэйсы - при нажатии на buttonOtkrit private function clickOnMenuButtonListener(e:MouseEvent):void{ trace(e.target===selectedMenuButtun);//true trace(e.target);//[object Sprite] trace(selectedMenuButtun);//[object Sprite] trace(e.target.name);//instance6 trace(selectedMenuButtun.name);//instance6 selectedMenuButtun=e.target;//1118: Implicit coercion of a value with static type Object to a possibly unrelated type flash.display:Sprite. } P.S. без строчки все работает. Последний раз редактировалось GFreemen; 12.03.2009 в 23:14. |
|
|||||
а с областью видимости var selectedMenuButtun:Sprite=buttonOtkrit;
все нормально у вас?
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Oct 2006
Адрес: Волгодонск
Сообщений: 182
|
Объявлена в классе и, как я понимаю, должна быть везде видима в этом классе. Собственно говоря небыло бы видно - не трейсилось бы.
|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Тип свойства target у Event не является Sprite.
|
|
|||||
Регистрация: Oct 2006
Адрес: Волгодонск
Сообщений: 182
|
Cпасибо большое. Все работает. (а как может быть иначе)
Только маленький осадочек остался. Нельзя ли провести ликбез КАК работает. Цитата:
|
|
|||||
e.target имеет тип Object, с помощью конструкции e.target as Sprite мы говорим компилятору что данный объект принадлежит классу Sprite, далеее, если наш объект на самом деле спрайт, то все ок, твоей переменной присвоется ссылка на экземпляр класса, объект который вызвал ивент, если же нет, то selectedMenuButtun присвоется значение null - что вполне съедобно для компилятора
__________________
flash portfolio |
|
|||||
Регистрация: Oct 2006
Адрес: Волгодонск
Сообщений: 182
|
Ясненько.
Спасибо всем большое. |
Часовой пояс GMT +4, время: 18:24. |
|
« Предыдущая тема | Следующая тема » |
|
|