Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив / Zhukovskaya_Diplom_final.doc
Скачиваний:
58
Добавлен:
09.06.2015
Размер:
4.32 Mб
Скачать
  1. Цветовой экзамен по языку

При выборе второй методики перед Вами откроется следующее окно:

Рисунок 12 - Окно авторизации методики «Цветовой экзамен по языку»

В методике «Цветовой экзамен по языку» авторизация аналогична вышеописанной авторизации в методике «Рисуночный экзамен по языку» за исключением случая, когдаданная методика не входит в список, назначенных пользователю для прохождения диагностических методик. В этом случае Вам в поле, где Вы вводили id, выйдет следующее сообщение:

Рисунок 13 - Ошибка при авторизации в методике «Цветовой экзамен по языку»

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

Рисунок 14 - Окно диагностирования методики «Цветовой экзамен по языку»

При прохождении диагности Вампредлагается подобрать цвета, ассоциирующие у Вас с предъявляемыми названиями цветов (посередине слева) на родном или иностранном языке, например, показывается слово «Экрю», для которого надо подобрать ассоциирующийся цвет с помощью специальных регуляторов цветности (три регулятораRA,GA,BAпосередине справа). Подбираемый Вами цвет, Вы можете видеть в специальном поле в верхней правой части окна:

Рисунок 15 - Окно диагностирования методики «Цветовой экзамен по языку»

Для того, чтобы дать ответь, подберите с помощью регуляторов нужный цвет и нажмите круглую красную с серым треугольником кнопку под регуляторами цветности.

Если Вам требуется немедленно (аварийно) завершить методику, то нажмите кнопку «Закончить тестирования>>» и затем кнопку «Закрыть» или нажмите «крестик» в верхнем правом углу.

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

Рисунок 16 - Окно диагностирования методики «Цветовой экзамен по языку»

По окончанию прохождения диагностики Вы перейдете в окно следующего вида:

Рисунок 17 - Окно методики «Цветовой экзамен по языку»

Приложение №2 Листинг методики «Рисуночный экзамен по иностранному языку» Слой «Диагностика: Кадр 1»

stop();

ukazanie='Введите ваш id '

var example1:SharedObject=SharedObject.getLocal("example1");

example1.data.resultat=0;

example1.data.count=0;

example1.data.vremya_nachala=0;

example1.data.username=0;

example1.data.risunok=0;

example1.data.idusera=0;

example1.data.delitefile.clear();

//*********************ОПРЕДЕЛЯЕМ ТЕКУЩУЮ ДАТУ**********************

CurrentDate = new Date();

year = CurrentDate.getFullYear();

month = CurrentDate.getMonth()+1;

date = CurrentDate.getDate();

if (month<10)

{

month = "0"+month;

}

if (date<10)

{

date = "0"+date;

}

example1.data.Data = year add "-" add month add "-" add date;

trace("Текущая дата: "+example1.data.Data);

Слой «Диагностика: Кадр 2»

var example1:SharedObject=SharedObject.getLocal("example1");

example1.data.o1=0; //счетчик для нажатий на чебокс о1

example1.data.o2=0; //счетчик для нажатий на чебокс о2

example1.data.o3=0; //счетчик для нажатий на чебокс о3

example1.data.o4=0; //счетчик для нажатий на чебокс о4

example1.data.countcount=1;

//---------------------ЧТЕНИЕ КАРТИНОК ИЗ БАЗЫ ДАННЫХ---------------------

var risunok:Array=new Array;

var MyVars= new LoadVars();

MyVars.onLoad = function(ok)

{

if (ok)

//___________________________НАЧАЛО_______________________________________

{

//*******************ВЫВОД ДАННЫХ О МЕТОДИКЕ***************************

//получим кол-во каринок, id картинкок и вариант методики

var r:String='';

r=this['r'];

if (r=='0')

{

_root.createTextField('oshibka',120,135,85,600,300);

oshibka.align = 'center';

oshibka.size=20;

oshibka.text = '\n\n\n\n\n\n\n ИЗВИНИТЕ! НО ДАННАЯ МЕТОДИКА НЕ ВХОДИТ В СПИСОК ЭТОГО ПОЛЬЗОВАТЕЛЯ!';

oshibka.background = true;

}

else

{

example1.data.r=r;

a= new Array;

for(var i:Number=1;i<=r;i++)

{

a[i]=0;

}

//создаем массив, где будут лежать массивы с названиями деталей

NameDetails= new Array;

//создаем массив, где будут лежать массивы с id деталей

IdDetails= new Array;

//создаем массив, где будут лежать массивы с первыми неверными названиями деталей

FalseNameDetails1= new Array;

//создаем массив, где будут лежать массивы со вторыми неверными названиями деталей

FalseNameDetails2= new Array;

//создаем массив, где будут лежать массивы с третьими неверными названиями деталей

FalseNameDetails3= new Array;

for(var i:Number=1;i<=r;i++)

{

NameDetails[i]=' ';

IdDetails[i]=' ';

FalseNameDetails1[i]=' ';

FalseNameDetails2[i]=' ';

FalseNameDetails3[i]=' ';

}

pic=new Array();

met=new Array();

for(var i:Number=1;i<=r;i++)

{

pic[i]=this['pic'+i];

met[i]=this['met'+i];

}

example1.data.pic=pic[1];

example1.data.met=met[1];

//****************ВЫВОД ИЗОБРАЖЕНИЯ ИЗ БД*******************************

//читаем URL картинок из БД

for(var i:Number=1;i<=r;i++)

{

risunok[i]= [i,this['mas1'+i]];

trace('Рисунок №'+i+' '+risunok[i]);

}

example1.data.risunok=risunok[1][1];

//выводим картинку на экран

/*

ширина и высота контейнера

*/

WIDTH = 510;

HEIGHT = 450;

/*

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

*/

var movieClipLoader:MovieClipLoader = new MovieClipLoader();

var obj:Object = new Object();

obj.onLoadStart = function(target:MovieClip)

{

trace("Загрузка стартовала...");

};

obj.onLoadProgress = function(target:MovieClip, loadedBytes:Number, totalBytes:Number)

{

trace("Загружено: "+(totalBytes/totalBytes*100)+" %");

};

obj.onLoadComplete = function(target:MovieClip)

{

trace("Загрузка завершена...");

};

obj.onLoadInit = function(target:MovieClip)

{

trace("С загруженным объектом можно работать...");

/*

масштабируем полученное изображение, если это изображение по ширине или высоте превышает размеры контейнера

*/

if (target._width>WIDTH || target._height>HEIGHT)

{

var n;

if (target._width>WIDTH)

{

n = target._width/WIDTH;

target._width /= n;

target._height /= n;

}

if (target._height>HEIGHT)

{

n = target._height/HEIGHT;

target._width /= n;

target._height /= n;

}

}

/*

располагаем изображение по центру контейнера

*/

target._x = (WIDTH-target._width)/2;

target._y = (HEIGHT-target._height)/2;

};

obj.onLoadError = function(target:MovieClip, errorCode:String)

{

trace("Ошибка при загрузке файла! Код ошибки: "+errorCode);

};

movieClipLoader.addListener(obj);

/*

создаём контейнер, в который будем загружать изображение

*/

_root.createEmptyMovieClip("conteiner", _root.getNextHighestDepth());

/*

запускаем загрузку изображения

*/

movieClipLoader.loadClip(example1.data.risunok, conteiner);

//********************ВЫВОД ДАННЫХ О ДЕТАЛЯХ****************************

for(var j:Number=1;j<=r;j++)

{

if((met[j]=='a') or (met[j]=='c'))

{

name_details= new Array;

for(var i:Number=1;i<=this['k'+j];i++)

{

name_details[i]=' ';

}

id_details= new Array;

for(var i:Number=1;i<=this['k'+j];i++)

{

id_details[i]=' ';

}

//--читаем id и название деталей из БД

for(var i:Number=1;i<=this['k'+j];i++)

{

id_details[i]=this['mas2'+j+i];

name_details[i]=this['mas3'+j+i];

}

trace("ID детали " + id_details[2][1]); // здесь первый элемент это id детали, а второй колонку в матрице (0 -это номер картинки, которой принадлежат эти детали/1 - название детали)

trace("Элемент массива " + name_details[2][1]); // здесь первый элемент это id детали, а второй колонку в матрице (0 -это номер картинки, которой принадлежат эти детали/1 - название детали)

NameDetails[j]=name_details;

IdDetails[j]=id_details;

var d=new Array; //кол-во деталей у данной картинки

d[j]=this['k'+j];

trace('новый счетчик '+d[j]);

a[j]=d[j];

if(j==1)

{

example1.data.schet=d[j];

trace(example1.data.schet);

}

}

}

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

for(var j:Number=1;j<=r;j++)

{

if(met[j]=='b')

{

id_details1= new Array;

for(var i:Number=1;i<=this['m'+j];i++)

{

id_details1[i]=' ';

}

//--читаем id из БД

for(var i:Number=1;i<=this['m'+j];i++)

{

id_details1[i]= this['mas2'+j+i];

}

IdDetails[j]=id_details1;

var d=new Array; //кол-во деталей у данной картинки

d[j]=this['m'+j];

trace('новый счетчик '+d[j]);

a[j]=d[j];

if(j==1)

{

example1.data.schet=d[j];

trace(example1.data.schet);

}

}

//***********ВЫВОД НЕПРАВИЛЬНЫХ ОТВЕТОВ*******************************

for(var j:Number=1;j<=r;j++)

{

if(met[j]=='a')

{

answer_false1= new Array;

for(var i:Number=1;i<=this['l'+j];i++)

{

answer_false1[i]=' ';

}

answer_false2= new Array;

for(var i:Number=1;i<=this['l'+j];i++)

{

answer_false2[i]=' ';

}

answer_false3= new Array;

for(var i:Number=1;i<=this['l'+j];i++)

{

answer_false3[i]=' ';

}

//--читаем неправильные ответы из БД

for(var i:Number=1;i<=this['l'+j];i++)

{

answer_false1[i]=this['mas5'+j+i];

answer_false2[i]=this['mas6'+j+i];

answer_false3[i]=this['mas7'+j+i];

}

FalseNameDetails1[j]=answer_false1;

FalseNameDetails2[j]=answer_false2;

FalseNameDetails3[j]=answer_false3;

}

}

//***************ЗАДАНИЕ ПЕРЕМЕННЫХ ЧЕКБОКСАМ*************************

//---присваиваем значения чекбоксам (вариант а)------------

if(met[1]=='a')

{

var rand: Number;

var massiv=new Array();

massiv[1]=NameDetails[1][1];

massiv[2]=FalseNameDetails1[1][1];

massiv[3]=FalseNameDetails2[1][1];

massiv[4]=FalseNameDetails3[1][1];

var massiv1=new Array();

massiv1[1]=o1;

massiv1[2]=o2;

massiv1[3]=o3;

massiv1[4]=o4;

var p=new Array();

for(var i:Number=1;i<=4;i++)

{

p[i]=0;

}

var t:Number=1;

while((massiv1[1].label==' ')or(massiv1[2].label==' ')or(massiv1[3].label==' ')or(massiv1[4].label==' '))

{

while((p[1]==rand) or (p[2]==rand) or (p[3]==rand) or (p[4]==rand))

{

rand=Math.round(Math.random()*3+1);

}

massiv1[rand].label=massiv[t-1];

p[t]=rand;

t++;

}

}

//---присваиваем значения чекбоксам (вариант b)------------

if (met[1]=='b')

{

o1.enabled=false;

o2.enabled=false;

o3.enabled=false;

o4.enabled=false;

_root.createTextField('txt',120,535,197,230,25);

txt.type='input'; //поле ввода

txt.text = ' ';

txt.background = true;

txt.border = true;

_root.attachMovie("ris", "mc",1);

_root["mc"]._x = 511;

_root["mc"]._y = 150;

}

//---присваиваем значения чекбоксам (вариант c)------------

if(met[1]=='c')

{

o2.label=' '+NameDetails[1][1];

o1.enabled=false;

//o2.enabled=false;

o3.enabled=false;

o4.enabled=false;

_root.attachMovie("ris", "mc",1);

_root["mc"]._x = 511;

_root["mc"]._y = 150;

}

}

//________________________________КОНЕЦ______________________________________

}

else

{

text="Error loading variables";

}

};

MyVars.load('http://site.ru/'+example1.data.delitefile+'.php');

//указываем номер детали

per.text='1';

Соседние файлы в папке Архив