Внешний вид сайта:

Добавление кнопок для выбора языка

Полезность страницы:
0/100

Чтобы усвоить изученный материал, добавьте самостоятельно на сцену еще несколько кнопок, позволяющих пользователю выбирать язык, на котором в текстовом поле будут выводиться сообщения. Вначале зам следует добавить переменную, в которой будет храниться выбранный пользователем язык, затем — установить ее значением язык по умолчанию.

При видимых панели Actions (Действия) и временной шкале выберите кадр 1 на слое actions.

Добавьте следующую строку под существующим кодом:

var language: StTring = "English";

Затем добавьте код, с помощью которого перед добавлением текста в текстовое поле будет проверяться значение переменной language.

При видимых панели Actions (Действия) и временной шкале выберите кадр 2 на слое actions.

На панели Actions (Действия) на кадре 2 выберите строку кода

info_txt.text="The animation has played "+String(count)+"x.";

и вырежьте ее (Edit > Cut (Правка > Вырезать)) в буфер обмена.

Разместите каретку на панели Actions (Действия) под последней строкой кода.

Создайте новую функцию, которая будет проверять выбранный язык. Для этого добавьте следующий код на панели Actions (Действия):

function setLanguage():void {
    if (language == "English") {

    }
}

В строке над первой закрывающей фигурной скобкой (}) вставьте вырезанный код (см. выше), чтобы функция приняла такой вид:

function setLanguage():void {
   if (language == "English") {
      info_txt.text = "The animation has played " + String(count) + "x. " ;
   }
}

При вызове данная функция будет проверять, установлена ли переменная language равной English (английский) (а это стандартный вариант, благодаря тому коду, который вы добавили на шаге 2). Если язык — английский, то вы будете уведомлены об этом с помощью сообщения.

Потом мы добавим кнопки, с помощью которых можно будет выбирать не только английский, но и немецкий (German), испанский (Spanish) языки. Для этого нужно добавить две эти возможности в условный оператор.

Добавьте код в функцию setLanguage(), чтобы она приобрела такой вид:

function setLanguage():void { if (language == "English") {

info_txt.text = "The animation has played " + String(count) — + "x."; } else if (language == "German") {

info_txt.text = "Die Animation wurde " + String(count) + "x "-> abgespielt ."; } else if (language == "Spanish") {

info_txt.text = "La animacion ha jugado " + String(count) + w "x." ;

В отличие от создаваемых ранее, функция setLanguage() не является функцией для обработки события, то есть она не вызывается в ответ на определенный тип события. Это связано с тем, что данная функция должна выполняться в самом начале работы приложения, а также при изменении пользователем языка.

Чтобы вызвать такую функцию, следует всего лишь ввести ее имя и добавить после него пару скобок. Если бы функция приобретала параметры, они бы писались в скобках. Данной конкретной функции никакие параметры не передаются.

На панели Actions (Действия) выделите строку после функции setLanguage ().

Вызовите функцию setLanguage(), чтобы с ее помощью была установлена переменная language в начале воспроизведения анимации. Для этого введите следующий код:

setLanguage() ;

Теперь вы сможете добавить кнопки, которые позволят пользователю менять язык.

На панели Library (Библиотека) (Window > Library (Окно > Библиотека)) находятся кнопки English Button, German Button и Spanish Button. Перетащите по одному экземпляру каждой кнопки в левый верхний угол сцены. Это обычные кнопки с добавленным текстом.

На панели Properties (Свойства) экземплярам новых кнопок дайте названия english_btn, german btn и spanishbtn соответственно.

Продолжайте вводить код на 2 кадре слоя actions и добавьте по слушателю для каждой кнопки. Для этого введите следующий код после последней добавленной строки:

english_btn.addEventListener(MouseEvent.CLICK, setEnglish);
german_btn.addEventListener(MouseEvent.CLICK, setGerman);
spanish_btn.addEventListener(MouseEvent-CLICK, setSpanish);

Нажимая любую из этих кнопок, необходимо выполнить следующие действия.

•    Установить значение переменной language равным выбранному языку.
•    Вызвать функцию setLanguage(), чтобы изменить содержимое текстового поля.

Помните, что для определения текста, который будет размещен в поле, в условном операторе функции setLanguage() проверяется значение переменной language.

На строке под созданными слушателями добавьте следующий код:

    function setEnglish(e:MouseEvent):void { language = "English"; setLanguage();

    }

    unction setGerman(e:MouseEvent):void { language = "German"; setLanguage();

    }

    function setSpanish(e:MouseEvent):void { language = "Spanish"; setLanguage();

Дополнить страницу Вы можете помочь другим людям дополнив эту страницу вашими знаниями по данному вопросу!
03:02

Комментарии

Нет комментариев. Ваш будет первым!