Начало работы с вводом текста и динамическими текстовыми полями с помощью ActionScript 2.0 или 3.0 - PullRequest
5 голосов
/ 30 июля 2009

Я знаю, что это простой вопрос, но я мало работал с ActionScript ...

Я знаю, как создать поле ввода текста с помощью Flash. Я могу создать его на сцене и дать ему имя экземпляра.

Что такое код для захвата значения поля ввода текста и отображения этого значения в динамическом текстовом поле? Как этот процесс отличается между ActionScript 2.0 и 3.0?

Ответы [ 3 ]

4 голосов
/ 30 июля 2009

Это действительно зависит от того, когда вы хотите обновить динамическое текстовое поле данными входного текстового поля.

Если вы хотите обновить динамическое текстовое поле один раз, попробуйте следующее:

//AS3
myDynamicTF.text = myInputFT.text;

//AS2
myDynamicTF._text = myInputFT._text;

Если вы хотите обновлять динамическое текстовое поле каждый раз, когда пользователь вводит данные в поле ввода, то в AS3 вам нужно прослушать событие TextField's Change

//AS3
myInputFT.addEventListener(Event.CHANGE, changeHandler);

private function changeHandler(e:Event):void 
{
    myDynamicTF.text = myInputFT.text;
}

Для AS2 вы можете просто установить метод ввода onChange:

//AS2
myInputFT.onChanged = function(textfield_txt:TextField) 
{
    myDynamicTF._text = textfield_txt._text;
};
1 голос
/ 12 мая 2010

Я получал эту ошибку, пока я не восстановил свой внешний файл .as. В отличие от файлов в .fla, по-видимому, Flash использует последнюю сохраненную версию файла .as, а не текущее содержимое. Примечание. Это во Flash 8, поэтому пробег может отличаться.

0 голосов
/ 30 июля 2009

Если вы работаете строго с файлами ActionScript, вам, вероятно, потребуется импортировать библиотеку событий. Это позволит вам на самом деле использовать события.

В начале каждого файла ActionScript, в котором вы хотите использовать события, вам нужно добавить:

import flash.events.*;
...