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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 15.12.2006, 13:01
Elephant83 вне форума Посмотреть профиль Отправить личное сообщение для Elephant83 Посетить домашнюю страницу Elephant83 Найти все сообщения от Elephant83
  № 1  
Ответить с цитированием
Elephant83

Регистрация: Dec 2006
Сообщений: 1
По умолчанию Вебсервисы. Выполнить lastResult после send().

При нажатии на кнопку btnLogin, вызывается функция badLogin()
Код:
<mx:Button x="176" y="78" label="Login" id="btnLogin" click="{badLogin()}"/>
которая обращается к вебсервису wsLogin и вызывает его функцию validateUserAndPassword.
Код:
public function badLogin():void {
	wsLogin.validateUserAndPassword.send()
	if(wsLogin.validateUserAndPassword.lastResult == 0){
		this.currentState = "fogotPassword";
	}
}
Функция validateUserAndPassword возвращает число, и если оно равно нулю, устанавливается состояние fogotPassword.
Состояние fogotPassword устанавливается только при втором нажатии на кнопку и это связано с тем, что wsLogin.validateUserAndPassword.send() еще не успевает выполнить функцию, а мы уже начинаем считывать wsLogin.validateUserAndPassword.lastResult. Как бороться с такими вещами? Как заставить вызывать wsLogin.validateUserAndPassword.lastResult, только после того как предыдущая строка выполнится до конца?

Старый 15.12.2006, 13:26
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 2  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Посмотреть события класса WebService и Operation и подписыватся под них, можно погуглить по ключевым словам - асинхронные вызовы.
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 17.12.2006, 22:41
ex.image вне форума Посмотреть профиль Отправить личное сообщение для ex.image Найти все сообщения от ex.image
  № 3  
Ответить с цитированием
ex.image

Регистрация: Jan 2006
Адрес: Москва
Сообщений: 65
Отправить сообщение для ex.image с помощью ICQ
Все очень просто:
wsLogin.validateUserAndPassword.addEventListener("result", validateUserAndPasswordComplete);

Соответсвенно пока идет обработка запроса можно заблокировать кнопочки и выкинуть часики, как только данные евент отработает снимаем блокировку прячем часики и выкидываем соответсвующие сообщения )))
__________________
Бубен - волшебный инструмент программирования.

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

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

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


 


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


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