Показать сообщение отдельно
Старый 18.05.2009, 19:44
xzwiex вне форума Посмотреть профиль Отправить личное сообщение для xzwiex Найти все сообщения от xzwiex
  № 1  
Ответить с цитированием
xzwiex

Регистрация: Apr 2009
Сообщений: 7
По умолчанию sendAndLoad и event внутри класса

Собственно задача такая: отправить запрос на сервер, получить результат, и если результат удовлетворяет определенным требованиям(при логине сервер возвращает "ОК"), вернуть true. Как только это происходит, повесить событие onLogin

В классе пишу
Код AS1/AS2:
 
import mx.events.EventDispatcher  
 
class Flat {
 
 	private var dispatchEvent:Function;
 	var addEventListener,removeEventListener:Function;	
	var username:String = "";
	var password:String = "";
	var url:String = "http://myserver.com";
	private var accepter:LoadVars;
	var myArray:Array;
 
 
	function Flat(user:String,pass) {
		myArray = new Array();
		username = user;
		password = pass;
		EventDispatcher.initialize(this);
 
	}
 
	function login() {
		var req:LoadVars = new LoadVars();
                var accepter:LoadVars = new LoadVars();
		accepter.onData = eventer;
		req.decode("mode=login");
		req.decode("user="+username);
		req.decode("hpassword="+password);
		req.sendAndLoad(url,accepter,"POST");
	}
	function eventer(myString) {
                var res:Boolean = false;
                if (myString == "OK") {res = true;}
		var eventObject:Object = {target:this, type:"onLogin"};
                eventObject.res = res;  
		dispatchEvent(eventObject);
	}
 
}
В мувике пишу
Код AS1/AS2:
var myClient:Flat = new Flat("user","pass");
 
var myListnerObj:Object = new Object; 
myListnerObj.onLogin = function() {
    trace ('ok');
}
myClient.addEventListener("onLogin",myListnerObj);
myClient.login();
Собственно, заветного "ок" не наблюдается. Где моя ошибка?