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

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

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

Регистрация: Jun 2012
Сообщений: 22
По умолчанию вводимый текст

Здравствуйте, уважаемые форумчане!

Я уже целый час сижу не могу найти как в AS3.0 "взять" введенный текст из непрограммно-добавленного вводимого текста.

у меня на первом кадре есть вводимый текст a1. right и wrong - это мувиклипы.

я хотела сделать вот так

Код AS1/AS2:
a1.onChange=function () { 
if(a1.text=="name") { right.gotoAndStop(2);} 
{wrong.gotoAndStop(2);}
}
как можно это сделать в AS3.0??
Плииз помогитее

Добавлено через 34 секунды
Flash cs5.5

Старый 18.05.2014, 13:40
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Код AS3:
import flash.events.Event;
 
a1.addEventListener(Event.CHANGE, onChange);
 
function onChange(e:Event):void {
   if(a1.text=="name") { right.gotoAndStop(2);} 
   else {wrong.gotoAndStop(2);}
}
__________________
Ко мне можно и нужно обращаться на ты)

Старый 18.05.2014, 14:00
ilmira вне форума Посмотреть профиль Отправить личное сообщение для ilmira Найти все сообщения от ilmira
  № 3  
Ответить с цитированием
ilmira

Регистрация: Jun 2012
Сообщений: 22
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Код AS3:
import flash.events.Event;
 
a1.addEventListener(Event.CHANGE, onChange);
 
function onChange(e:Event):void {
   if(a1.text=="name") { right.gotoAndStop(2);} 
   else {wrong.gotoAndStop(2);}
}
спасибо за отклик!

а можно так, чтобы функция начала выполняться только тогда, когда пользователь закончит вводить текст.

а то он при каждом вводе каждой буквы работает.

Старый 18.05.2014, 14:27
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 4  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Но тут не угадать момент, когда пользователь решил закончить печатать, может он долго букву на клавиатуре ищет. По этому наверно придётся завести своего рода таймер, который будет перезапускаться после каждого введённого символа в текстовом поле. И если по прошествии, допустим 1 сек, пользователь больше не нажимал клавиш, тогда пусть это считается за "пользователь перестал вводить текст" и запускается нужная вам функция.
Код AS3:
import flash.events.Event;
import flash.utils.Timer;
import flash.events.TimerEvent;
 
var timer:Timer=new Timer(500,1); // 500 - миллисекунд (пол секунды)
 
timer.addEventListener(TimerEvent.TIMER_COMPLETE,timer_complete);
 
function timer_complete(e:TimerEvent):void
{
	if(a1.text=="name")
	{
		right.gotoAndStop(2);
	}
	else
	{
		wrong.gotoAndStop(2);
	}
}
 
a1.addEventListener(Event.CHANGE, onChange);
function onChange(e:Event):void
{
	timer.reset();
	timer.start();
}


Последний раз редактировалось samana; 18.05.2014 в 14:38.
Старый 18.05.2014, 14:33
ilmira вне форума Посмотреть профиль Отправить личное сообщение для ilmira Найти все сообщения от ilmira
  № 5  
Ответить с цитированием
ilmira

Регистрация: Jun 2012
Сообщений: 22
Цитата:
Сообщение от samana Посмотреть сообщение
Но тут не угадать момент, когда пользователь решил закончить печатать, может он долго букву на клавиатуре ищет. По этому наверно придётся завести своего рода таймер, который будет перезапускаться после каждого введённого символа в текстовом поле. И если по прошествии, допустим 1 сек, пользователь больше не нажимал клавиш, тогда пусть это считается за "пользователь перестал вводить текст" и запускается нужная вам функция.
спс за отклик! я решила добавить кнопку "Проверить". все работает. урааа))

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

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

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


 


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


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