Закрыть ... [X]

Создание теста с использованием компонента radiobutton в macromedia flash

Лабораторный практикум – создание теста (файл на диске тест.swf)

 

Создадим несколько тестовых вопросов различных видов: закрытого типа с возможностью выбора как одного варианта ответа из предложенных, так и указать сразу несколько вариантов ответа, которые вы считаете верными; открытого типа, при котором ответ вводится с клавиатуры; с возможностью перемещения объекта (например, рисунка) в указанную позицию (например, в окно фамилии художника). На последнем ключевом кадре временной шкалы (в нашем случае под номером 6) мы увидим результат тестирования – количество правильных ответов и оценку.

 

В работе мы будем использовать готовые компоненты.

Компоненты – это сложные клипы с параметрами, определяемыми в процессе разработки Flash-документа. По сути, они представляют собой контейнеры, в которых содержится большое число элементов, работающих вместе. Компоненты применяются для повышения интерактивности, продуктивности или добавления специальных эффектов в проекты. Кроме того, они позволяют быстро разрабатывать пользовательские формы и облегчают совместную разработку Flash-проектов.

Список компонент находится на специальной панели Components (Компоненты), которую можно открыть с помощью меню Window – Components (Окно – Компоненты). Нужные нам компоненты расположены в разделе User Interface: RadioButton (радио кнопки - дают возможность выбрать один вариант ответа из нескольких), CheckBox (позволяют выбирать несколько вариантов ответов) и ComboBox (организуют выбор ответа из выпадающего списка).

 

 

 

Рис.1 Панель Components (Компоненты)

 

Добавляются компоненты на рабочую область перетаскиванием или двойным щелчком по выбранному компоненту на панели. При выделении на рабочей области экземпляра компонента на вкладке Parameters (Параметры) инспектора свойств (Окно, Свойства, Параметры) (Window, Properties, Parameters) становятся доступными параметры данного компонента (Рис.2). Вкладка Properties (Свойства) использованием позволяет назначать имена экземпляров (Instance Name).

Рис.2 Параметры компонента

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

1. Создаем новый проект.

2. Называем слой «Тесты».

3. Создаем на основной временной шкале пять ключевых кадров.

Располагаем на каждом ключевом кадре на рабочей области текстовое поле с вопросом, применяя инструмент «Текст». В окне свойств выбираем тип «Статический текст».

4. Создаем шестой ключевой кадр. В нем мы будем отображать результат теста: количество правильных ответов и оценку.

5. На 1КК реализуем возможность выбора одного правильного ответа из нескольких. В окне «Компоненты» выбираем RadioButton и переносим 3 таких компонента на рабочую область (количество компонент зависит от числа вариантов ответов). В окне «Параметры» (Окно, Свойства, Параметры) для каждого компонента RadioButton задаем имя экземпляра (Instance Name), например, radio1, radio2 и radio3. В строке label дважды ЛКМ и вводим текст варианта ответа (Рис.3.).

Рис.3. Вводим текст варианта ответа

 

1КК

Рис.4 Внешний вид компонентов RadioButton

 

 

6. Создаем шестой ключевой кадр, чтобы отслеживать выполнение программного кода последовательно.

 

В шестом ключевом кадре разместите надпись «Число правильных ответов:» и динамическое текстовое поле с именем «numb». Чуть ниже – надпись «Ваша оценка:» и динамическое текстовое поле с именем «resalt».

 

Рис.5 Окно результата

 

7. Создайте новый слой «Кнопка», разместите в первом кадре этого слоя кнопку с именем экземпляра «button1».  

В последний кадр последовательности нового слоя добавьте пустой ключевой кадр для того, чтобы кнопка не отображалась после прохождения теста (Рис. 6).

 


Рис. 6. Расположение кадров на временной шкале

 

8. В слое «Кнопки» ЛКМ по 1КК. В окне действий на вкладке должна отобразиться надпись «Действия – кадр». Отключаем помощника по сценариям. Введите приведенный ниже код.

 

 

stop(); // останавливаем проигрывание главной временной шкалы

var test=0; itog=0.00; otsenka=0    //объявляем новые переменные

//для подсчета

// количества правильных ответов, доли правильных ответов, оценки

button1.onPress = function() {

// при выборе правильного ответа в каждом из предложенных

// вопросов увеличиваем переменную test на 1

//­­­­­­­­­­­­­­­­­­

if (radio1.selected == true) {                       //правильный вариант ответа

//содержится в компоненте

//с именем экземпляра radio1

test++;

}

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

 

_root.nextFrame(); // перемещаемся на следующий вопрос

numb.text=test;                   // выводим в текстовое поле number значение

//переменной test

resalt.text=otsenka;             // выводим в текстовое поле resalt значение

                                          //переменной otsenka

};

 

Рис.7. Код записываем для 1 ключевого кадра

 

9. Запускаем наш проект и проверяем появление в последнем ключевом кадре численного значения количества правильных ответов. Оценка пока выставляется по умолчанию и равна 0.

 

 

 

 

10. На 2КК реализуем возможность выбора нескольких правильных ответов. В окне «Компоненты» выбираем CheckBox и переносим 3 таких компонента на рабочую область (количество компонент зависит от числа вариантов ответов). В окне «Параметры» (Окно, Свойства, Параметры) для каждого компонента CheckBox задаем имя экземпляра (Instance Name), например, check1, check2 и check3.

 

2КК

Рис.8. Внешний вид компонентов CheckBox

 

11. В слое «Кнопки» ЛКМ по 1КК. В окне действий на вкладке должна отобразиться надпись «Действия – кадр». Отключаем помощника по сценариям. Между строчками

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

продолжаем вводить код:

 

if (check1.selected == true && check2.selected == true && check3.selected == false) {

test++;

}

 

В нашем случае правильным ответом считается выбор экземпляров с именами check1 и check2, для них устанавливается значение true (истина).

 

12. Запускаем наш проект и проверяем появление в последнем ключевом кадре численного значения количества правильных ответов. Оценка пока выставляется по умолчанию и равна 0.

 

 

 

 

 

 

 

 

13. На 3КК реализуем возможность выбора одного правильного варианта ответа из нескольких. В окне «Компоненты» выбираем ComboBox и переносим 3 таких компонента на рабочую область (количество компонент зависит от числа вариантов ответов). В окне «Параметры» (Окно, Свойства, Параметры) для каждого компонента ComboBox задаем имя экземпляра (Instance Name), например, combo1, combo и combo3.

 

3КК

Рис.9. Использование компонента ComboBox

 

Для изменения надписи компонента нужно на панели Parameters (Параметры) дважды щелкнуть ЛКМ в строке labels. Знак «+» помогает добавить новую строку в список (Рис.10). Для компонента ComboBox понадобится также изменить значения в строке data, аналогично.

 

Рис.10. Заполнение параметра labels

 

 

14. В слое «Кнопки» ЛКМ по 1КК. В окне действий на вкладке должна отобразиться надпись «Действия – кадр». Отключаем помощника по сценариям. Между строчками

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

продолжаем вводить код:

 

if (combo1.value == 0 && combo2.value == 1 && combo3.value == 2) {

test++;

}

 

В нашем случае правильный вариант ответов для экземпляра с именем combo1 находится под номером 0 (первая строка в раскрывающемся списке), для экземпляра с именем combo2 - под номером 1 (вторая строка в раскрывающемся списке), для экземпляра с именем combo3 - под номером 2 (третья строка в раскрывающемся списке).

 

15. На 4КК реализуем возможность ввода информации с клавиатуры. Создаем текстовое поле типа «Вводимый текст» (Input Text), даем имя экземпляра vvod.

 

Рис.11. Добавляем поле ввода.

 

16. В слое «Кнопки» ЛКМ по 1КК. В окне действий на вкладке должна отобразиться надпись «Действия – кадр». Отключаем помощника по сценариям. Между строчками

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

продолжаем вводить код:

 

if (vvod.text=='1945'){

test++;

}    

В нашем случае правильным считается ввод текста ‘1945’.

 

17. На 5КК реализуем возможность перемещения объектов. Помещаем на рабочей области рисунки, которые являются целью для перетаскиваемых объектов – надписей. С помощью инструмента «Текст» добавляем надписи (можно перемещать не надписи, а другие рисунки).

Рис.12. Перемещаем надписи на рисунки

 

18. Преобразуем надписи в кнопки. Сначала текст необходимо преобразовать в рисунок (Изменить, Разделить, Изменить, Разделить).  Затем создаем кнопки (Выделяем надпись, F8, кнопка), в окне свойств даем им имена экземпляров b1, b2, b3.

19. Вызываем Окно действий для первой кнопки (Выделяем кнопку, F9), на вкладке должна отобразиться надпись «Действия – Кнопка». Записываем код, который позволит кнопке перемещаться:

 

on (press) {

       startDrag("b1", true);

}

on (release) {

       stopDrag();

}

 

Рис.13. Информация в окне действий

 

20. Выполняем пункт 19 для остальных кнопок.

21. Тестируем сцену (Ctrl+Alt+Enter) и проверяем результат.

22. Преобразуем кнопки во фрагменты роликов (Выделяем кнопку, F8, фрагмент ролика). В окне свойств даем кнопкам имена экземпляров clip1, clip2, clip3 соответственно. Преобразуем рисунки во фрагменты роликов и дадим им имена экземпляров clip4, clip5, clip6.

23. Пусть правильным вариантом ответа будет совмещение фрагментов роликов в сочетаниях: clip1 – clip5, clip2 – clip4, clip3 – clip6.

24. В слое «Кнопки» ЛКМ по 1КК. В окне действий на вкладке должна отобразиться надпись «Действия – кадр». Отключаем помощника по сценариям. Между строчками

//­­­­­­­­­­­­­­­­­­

//­­­­­­­­­­­­­­­­­­

продолжаем вводить код:

if ((clip1.hitTest(clip5))&&(clip2.hitTest(clip4))&&(clip3.hitTest(clip6))){

test++;

}

 

25. Часть, выделенная жирным шрифтом, является дополнением к основному коду и вычисляет значение оценки. Без нее мы увидим только число правильных ответов.

stop(); // останавливаем проигрывание главной временной шкалы

var test=0; itog=0.00; otsenka=0    //объявляем новые переменные

//для подсчета

// количества правильных ответов, доли правильных ответов, оценки

button1.onPress = function() {

// при выборе правильного ответа в каждом из предложенных

// вопросов увеличиваем переменную test на 1

//­­­­­­­­­­­­­­­­­­

if (radio1.selected == true) {

test++;

}

//­­­­­­­­­­­­­­­­­­

if (check1.selected == true && check2.selected == true && check3.selected == false) {

test++;

}

//­­­­­­­­­­­­­­­­­­

if (combo1.value == 0 && combo2.value == 1 && combo3.value == 2) {

test++;

}

//------------------

if (vvod.text=='1945'){

test++;

}    

//------------------

if ((clip1.hitTest(clip5))&&(clip2.hitTest(clip4))&&(clip3.hitTest(clip6))){

test++;

}

 

itog=test/5;            //находим долю правильных ответов,

//разделив число правильных ответов

// на количество вопросов, в нашем случае их 5

if (itog>=0.9){        //если доля правильных ответов не меньше 90%,

//то ставится оценка 5

       otsenka=5;

}else{

                   if (itog>=0.75){          //если доля правильных ответов не меньше

//75%, то ставится оценка 4 создание теста с использованием компонента radiobutton в macromedia flash

                               otsenka=4;

                   }else{

                               if (itog>=0.6){  //если доля правильных ответов не меньше

//60%, то ставится оценка 3

                                          otsenka=3;

                               }else{

                                          otsenka=2;

                                          }

                               }

       };

 

_root.nextFrame(); // перемещаемся на следующий вопрос

numb.text=test;       // выводим в текстовое поле number значение

//переменной test

resalt.text=otsenka;             // выводим в текстовое поле resalt значение

//переменной otsenka

};

 

Запустите предварительный просмотр, выберите в каждом вопросе варианты ответов и нажмите кнопку. После прохождения теста (по достижению 6 кадра) в текстовом поле numb отобразится количество правильных ответов, а в текстовом поле resalt – полученная оценка.

На последнем ключевом кадре слоя «Кнопки» разместите кнопку с именем экземпляра «button2».  Организуйте переход на 1КК.

Запустите проект.

 


Источник: http://www.school399.ru/tea/shokhina/Flash/LP11.html


Поделись с друзьями



Рекомендуем посмотреть ещё:



Создание теста с использованием компонента Radiobutton в Жакет с оригинальными жаккардами


Создание теста с использованием компонента radiobutton в macromedia flash Создание теста с использованием компонента radiobutton в macromedia flash Создание теста с использованием компонента radiobutton в macromedia flash Создание теста с использованием компонента radiobutton в macromedia flash Создание теста с использованием компонента radiobutton в macromedia flash Создание теста с использованием компонента radiobutton в macromedia flash


ШОКИРУЮЩИЕ НОВОСТИ