Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.03.2008, 19:03
BeDLiNt вне форума Посмотреть профиль Отправить личное сообщение для BeDLiNt Найти все сообщения от BeDLiNt
  № 1  
Ответить с цитированием
BeDLiNt
 
Аватар для BeDLiNt

Регистрация: Mar 2008
Адрес: Moscow
Сообщений: 311
Отправить сообщение для BeDLiNt с помощью ICQ Отправить сообщение для BeDLiNt с помощью Skype™
По умолчанию Event не срабатывает:(

Пишу кастомный евент, вот он:
Код:
package {
	import flash.events.Event;
	
	public class EditEvent extends Event {
		
		public var content:String;
		
		public function EditEvent(type:String, content:String) {
			super(type);
			this.content = content;
		}
		
	    public override function clone():Event {
         return new EditEvent(type, content);
    	}	
	
	}
	
}
Потом посылаю событие таким образом (но он в компоненте модального диалога):
Код:
var currentEvent:Event = new EditEvent("EditEvent", "PREVED");
dispatchEvent(currentEvent);
Объявляю обработчик события в основной программе:
Код:
application.addEventListener("EditEvent", prevedMedved);
Но евент не ловится..

P/S/ Если делать событие в основной программе, то всё работает как часы.


Последний раз редактировалось BeDLiNt; 20.03.2008 в 19:47.
Старый 20.03.2008, 20:35
BeDLiNt вне форума Посмотреть профиль Отправить личное сообщение для BeDLiNt Найти все сообщения от BeDLiNt
  № 2  
Ответить с цитированием
BeDLiNt
 
Аватар для BeDLiNt

Регистрация: Mar 2008
Адрес: Moscow
Сообщений: 311
Отправить сообщение для BeDLiNt с помощью ICQ Отправить сообщение для BeDLiNt с помощью Skype™
Проблемма решена:
Код:
parentApplication.dispatchEvent(currentEvent);

Старый 14.05.2008, 19:22
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 3  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
Что у меня не получается.
Делаю так:
mxml:
Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
	<mx:Script>
		<![CDATA[
			import MainApp;
			private function init():void{
				var m:MainApp = new MainApp();
			}
		]]>
	</mx:Script>
</mx:Application>
MainApp.as:
Код:
package{
	import Reciever;
	import Sender;
	
	public class MainApp{
		public function MainApp(){
                        var r:Reciever = new Reciever();
			var s:Sender = new Sender();
			
		}
	}
}
Sender.as:
Код:
package{
	import EventText;
	import flash.display.Sprite;
	public class Sender extends Sprite{
		public function Sender(){
			this.dispatchEvent(new EventText("EditEvent", "PREVED"));
		}

	}
}
Reciever.as:
Код:
package{
	
	import flash.display.Sprite;
	import mx.controls.Alert;
	
	public class Reciever extends Sprite{
		public function Reciever(){
			this.addEventListener( "EditEvent", updateListener );
		}
		public function updateListener( e:EventText ):void{
    		Alert.show(e.toString());
		}
	}
}
EventText.as:
Код:
package{
	import flash.events.Event;
	
	public class EventText extends Event {
		
		public var content:String;
		
		public function EventText(type:String, content:String) {
			super(type);
			this.content = content;
		}
		
	    public override function clone():Event {
              return new EventText(type, content);
    	}	
	
	}
}
Что тут не так?
__________________
john


Последний раз редактировалось Molecula; 14.05.2008 в 20:09.
Старый 15.05.2008, 14:29
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 4  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
Пока что решил проблему так:

Я подписываю экземпляр класса на прослушку, который диспатчит событие (s= Sender) и указываю функцию-листенер, как функцию другого экземпляра класса (r = Reciever).
Код:
s.addEventListener(our_custom_Event, r.someFunction);
Но не пойму правильно ли так?
__________________
john

Создать новую тему Ответ Часовой пояс GMT +4, время: 05:45.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 05:45.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.