Смекни!
smekni.com

Побудова клавіатурного тренажера (стр. 3 из 4)

case 2: return ll='у';

case 3: return ll='к';

case 4: return ll='е';

case 5: return ll='н';

case 6: return ll='г';

case 7: return ll='ш';

case 8: return ll='щ';

case 9: return ll='з';

case 10: return ll='х';

case 11: return ll='ъ';

case 12: return ll='ф';

case 13: return ll='ы';

case 14: return ll='в';

case 15: return ll='а';

case 16: return ll='п';

case 17: return ll='р';

case 18: return ll='о';

case 19: return ll='л';

case 20: return ll='д';

case 21: return ll='ж';

case 22: return ll='э';

case 23: return ll='я';

case 24: return ll='ч';

case 25: return ll='с';

case 26: return ll='м';

case 27: return ll='и';

case 28: return ll='т';

case 29: return ll='ь';

case 30: return ll='б';

case 31: return ll='ю';

case 32: return ll='ё';

}

};

void __fastcall TTrainForm::N5Click(TObject *Sender)

{

TrainForm->Close();

}

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

void __fastcall TTrainForm::N6Click(TObject *Sender)

{

Application->MessageBoxA("Програма Клавіатурний Тренажер","Про Програму...",MB_OK);

}

//Під час запуску програми будуть сховані всі компоненти--------------------

void __fastcall TTrainForm::FormCreate(TObject *Sender)

{

Timer1->Enabled=false;

Timer2->Enabled=false;

Options->Hide();

TrainUkr->Hide();

TrainRus->Hide();

TrainEng->Hide();

PTimer->Hide();

}

//Зчитуємо дані, які задав користувач на вкладці Опції----------------------

void __fastcall TTrainForm::Button1Click(TObject *Sender)

{

if (ukrainian->Checked==true)

rezhim=2; else

if (russian->Checked==true)

rezhim=3; else rezhim=1;

if (prof->Checked==true)

rivenj=2; else rivenj=1;

chas=StrToInt(time->Text);

Options->Hide();

}

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

void __fastcall TTrainForm::N7Click(TObject *Sender)

{

Application->MessageBoxA("Програму розробив студент ІІ курсу Факультета інформатики Шанта А. П.","Про Автора...",MB_OK);

}

//Після вибору Файл->Тренажер виконується наступне----------------------------

void __fastcall TTrainForm::N4Click(TObject *Sender)

{

TrainUkr->Hide();

TrainRus->Hide();

TrainEng->Hide();

Options->Hide();

Application->MessageBoxA("Натисніть Enter, щоб розпочати тренування"," Увага!",MB_OK);

PTimer->Show(); sec=0; min=0; Timer1->Enabled=true;

Timer2->Enabled=true;

Pravilno->Caption=0; Corect=0;

NePravilno->Caption=0; NoCorect=0;

if (rezhim==1) {

TrainUkr->Hide();

TrainRus->Hide();

Options->Hide();

LiteraEng->Top=8;

}

if (rezhim==2){

LiteraUkr->Top=8;

TrainRus->Hide();

TrainEng->Hide();

Options->Hide();

}

if (rezhim==3){ LiteraRus->Top=8;

TrainUkr->Hide();

TrainEng->Hide();

Options->Hide();

}

if (rivenj==1) Timer2->Interval=11; else Timer2->Interval=4;

sec=0; min=0; chas1=0;

//-----Нижче оформлений процес падання української літери

//-----та підсвітка падаючої літери на віртуальній клавіатурі

if (rezhim==2){

TrainUkr->Show();

LiteraUkr->Show();

int LeftRan;

Randomize;

LeftRan=random(623)+8;

LiteraUkr->Left=LeftRan;

slitera=UkrWord();

LiteraUkr->Caption=slitera;

if (slitera=='й') q1->Font->Color=clRed; else q1->Font->Color=clBlack;

if (slitera=='ц') w1->Font->Color=clRed; else w1->Font->Color=clBlack;

if (slitera=='у') e1->Font->Color=clRed; else e1->Font->Color=clBlack;

if (slitera=='к') r1->Font->Color=clRed; else r1->Font->Color=clBlack;

if (slitera=='е') t1->Font->Color=clRed; else t1->Font->Color=clBlack;

if (slitera=='н') y1->Font->Color=clRed; else y1->Font->Color=clBlack;

if (slitera=='г') u1->Font->Color=clRed; else u1->Font->Color=clBlack;

if (slitera=='ш') i1->Font->Color=clRed; else i1->Font->Color=clBlack;

if (slitera=='щ') o1->Font->Color=clRed; else o1->Font->Color=clBlack;

if (slitera=='з') p1->Font->Color=clRed; else p1->Font->Color=clBlack;

if (slitera=='х') p11->Font->Color=clRed; else p11->Font->Color=clBlack;

if (slitera=='ї') p111->Font->Color=clRed; else p111->Font->Color=clBlack;

if (slitera=='ф') a1->Font->Color=clRed; else a1->Font->Color=clBlack;

if (slitera=='і') s1->Font->Color=clRed; else s1->Font->Color=clBlack;

if (slitera=='в') d1->Font->Color=clRed; else d1->Font->Color=clBlack;

if (slitera=='а') f1->Font->Color=clRed; else f1->Font->Color=clBlack;

if (slitera=='п') g1->Font->Color=clRed; else g1->Font->Color=clBlack;

if (slitera=='р') h1->Font->Color=clRed; else h1->Font->Color=clBlack;

if (slitera=='о') j1->Font->Color=clRed; else j1->Font->Color=clBlack;

if (slitera=='л') k1->Font->Color=clRed; else k1->Font->Color=clBlack;

if (slitera=='д') l1->Font->Color=clRed; else l1->Font->Color=clBlack;

if (slitera=='ж') l11->Font->Color=clRed; else l11->Font->Color=clBlack;

if (slitera=='є') l111->Font->Color=clRed; else l111->Font->Color=clBlack;

if (slitera=='я') z1->Font->Color=clRed; else z1->Font->Color=clBlack;

if (slitera=='ч') x1->Font->Color=clRed; else x1->Font->Color=clBlack;

if (slitera=='с') c1->Font->Color=clRed; else c1->Font->Color=clBlack;

if (slitera=='м') v1->Font->Color=clRed; else v1->Font->Color=clBlack;

if (slitera=='и') b1->Font->Color=clRed; else b1->Font->Color=clBlack;

if (slitera=='т') n11->Font->Color=clRed; else n11->Font->Color=clBlack;

if (slitera=='ь') m1->Font->Color=clRed; else m1->Font->Color=clBlack;

if (slitera=='б') m11->Font->Color=clRed; else m11->Font->Color=clBlack;

if (slitera=='ю') m111->Font->Color=clRed; else m111->Font->Color=clBlack;

};

//-----Нижче оформлений процес падання російської літери

//-----та підсвітка падаючої літери на віртуальній клавіатурі

if (rezhim==3){

TrainRus->Show();

LiteraRus->Show();

int LeftRan;

Randomize;

LeftRan=random(623)+8;

LiteraRus->Left=LeftRan;

slitera=RusWord();

LiteraRus->Caption=slitera;

if (slitera=='й') q2->Font->Color=clRed; else q2->Font->Color=clBlack;

if (slitera=='ц') w2->Font->Color=clRed; else w2->Font->Color=clBlack;

if (slitera=='у') e2->Font->Color=clRed; else e2->Font->Color=clBlack;

if (slitera=='к') r2->Font->Color=clRed; else r2->Font->Color=clBlack;

if (slitera=='е') t2->Font->Color=clRed; else t2->Font->Color=clBlack;

if (slitera=='н') y2->Font->Color=clRed; else y2->Font->Color=clBlack;

if (slitera=='г') u2->Font->Color=clRed; else u2->Font->Color=clBlack;

if (slitera=='ш') i2->Font->Color=clRed; else i2->Font->Color=clBlack;

if (slitera=='щ') o2->Font->Color=clRed; else o2->Font->Color=clBlack;

if (slitera=='з') p2->Font->Color=clRed; else p2->Font->Color=clBlack;

if (slitera=='х') p22->Font->Color=clRed; else p22->Font->Color=clBlack;

if (slitera=='ъ') p222->Font->Color=clRed; else p222->Font->Color=clBlack;

if (slitera=='ф') a2->Font->Color=clRed; else a2->Font->Color=clBlack;

if (slitera=='ы') s2->Font->Color=clRed; else s2->Font->Color=clBlack;

if (slitera=='в') d2->Font->Color=clRed; else d2->Font->Color=clBlack;

if (slitera=='а') f2->Font->Color=clRed; else f2->Font->Color=clBlack;

if (slitera=='п') g2->Font->Color=clRed; else g2->Font->Color=clBlack;

if (slitera=='р') h2->Font->Color=clRed; else h2->Font->Color=clBlack;

if (slitera=='о') j2->Font->Color=clRed; else j2->Font->Color=clBlack;

if (slitera=='л') k2->Font->Color=clRed; else k2->Font->Color=clBlack;

if (slitera=='д') l2->Font->Color=clRed; else l2->Font->Color=clBlack;

if (slitera=='ж') l22->Font->Color=clRed; else l22->Font->Color=clBlack;

if (slitera=='э') l222->Font->Color=clRed; else l222->Font->Color=clBlack;

if (slitera=='я') z2->Font->Color=clRed; else z2->Font->Color=clBlack;

if (slitera=='ч') x2->Font->Color=clRed; else x2->Font->Color=clBlack;

if (slitera=='с') c2->Font->Color=clRed; else c2->Font->Color=clBlack;

if (slitera=='м') v2->Font->Color=clRed; else v2->Font->Color=clBlack;

if (slitera=='и') b2->Font->Color=clRed; else b2->Font->Color=clBlack;

if (slitera=='т') n22->Font->Color=clRed; else n22->Font->Color=clBlack;

if (slitera=='ь') m2->Font->Color=clRed; else m2->Font->Color=clBlack;

if (slitera=='б') m22->Font->Color=clRed; else m22->Font->Color=clBlack;

if (slitera=='ю') m222->Font->Color=clRed; else m222->Font->Color=clBlack;

if (slitera=='ё') ee->Font->Color=clRed; else ee->Font->Color=clBlack;

}

//-----Нижче оформлений процес падання англійської літери

//-----та підсвітка падаючої літери на віртуальній клавіатурі

if (rezhim==1) {

TrainEng->Show();

LiteraEng->Show();

int LeftRan;

Randomize;

LeftRan=random(623)+8;

LiteraEng->Left=LeftRan;

slitera=EngWord();

LiteraEng->Caption=slitera;

if (slitera=='q') q->Font->Color=clRed; else q->Font->Color=clBlack;

if (slitera=='w') w->Font->Color=clRed; else w->Font->Color=clBlack;

if (slitera=='e') e->Font->Color=clRed; else e->Font->Color=clBlack;

if (slitera=='r') r->Font->Color=clRed; else r->Font->Color=clBlack;

if (slitera=='t') t->Font->Color=clRed; else t->Font->Color=clBlack;

if (slitera=='y') y->Font->Color=clRed; else y->Font->Color=clBlack;

if (slitera=='u') u->Font->Color=clRed; else u->Font->Color=clBlack;

if (slitera=='i') i->Font->Color=clRed; else i->Font->Color=clBlack;

if (slitera=='o') o->Font->Color=clRed; else o->Font->Color=clBlack;

if (slitera=='p') p->Font->Color=clRed; else p->Font->Color=clBlack;

if (slitera=='a') a->Font->Color=clRed; else a->Font->Color=clBlack;

if (slitera=='s') s->Font->Color=clRed; else s->Font->Color=clBlack;

if (slitera=='d') d->Font->Color=clRed; else d->Font->Color=clBlack;

if (slitera=='f') f->Font->Color=clRed; else f->Font->Color=clBlack;

if (slitera=='g') g->Font->Color=clRed; else g->Font->Color=clBlack;

if (slitera=='h') h->Font->Color=clRed; else h->Font->Color=clBlack;

if (slitera=='j') j->Font->Color=clRed; else j->Font->Color=clBlack;

if (slitera=='k') k->Font->Color=clRed; else k->Font->Color=clBlack;

if (slitera=='l') l->Font->Color=clRed; else l->Font->Color=clBlack;

if (slitera=='z') z->Font->Color=clRed; else z->Font->Color=clBlack;

if (slitera=='x') x->Font->Color=clRed; else x->Font->Color=clBlack;

if (slitera=='c') c->Font->Color=clRed; else c->Font->Color=clBlack;

if (slitera=='v') v->Font->Color=clRed; else v->Font->Color=clBlack;

if (slitera=='b') b->Font->Color=clRed; else b->Font->Color=clBlack;

if (slitera=='n') n->Font->Color=clRed; else n->Font->Color=clBlack;

if (slitera=='m') m->Font->Color=clRed; else m->Font->Color=clBlack;

}

}

//Відкриваються Опції клавіатурного тренажера------------------------------------------

void __fastcall TTrainForm::N3Click(TObject *Sender)

{

Timer1->Enabled=false;

Timer2->Enabled=false;

PTimer->Hide();

TrainUkr->Hide();

TrainRus->Hide();

TrainEng->Hide();

Options->Show();

}

//Організація виводу часу під час тренування--------------------------------

void __fastcall TTrainForm::Timer1Timer(TObject *Sender)

{

if (sec==59){ min++; sec=-1;

}

sec++; chas1++;

int nul=0;

if (sec<10) timersec->Caption=IntToStr(nul)+IntToStr(sec); else timersec->Caption=IntToStr(sec);

if (min<10) timermin->Caption=IntToStr(nul)+IntToStr(min); else timermin->Caption=IntToStr(min);

}

//Наступний код обробляється під час падання літери-------------------------

void __fastcall TTrainForm::Timer2Timer(TObject *Sender)

{

//-----Присвоюються випадкові по горизонталі координати падаючой літери

//-----та перевірка того, чи вчасно була натиснута відповідна літера

if (rezhim==1){

LiteraEng->Top=(LiteraEng->Top)+1;

if (LiteraEng->Top>225) {

if (LiteraEng->Top!=255+1)

NoCorect++;

NePravilno->Caption=IntToStr(NoCorect);

if (rezhim==1) slitera=EngWord();

LiteraEng->Top=8;

Randomize;

int lran;

lran=random(623)+8;

LiteraEng->Left=lran;

LiteraEng->Caption=slitera; LiteraEng->Show(); }

}

if (rezhim==2){

LiteraUkr->Top=(LiteraUkr->Top)+1;

if (LiteraUkr->Top>225) {

if (LiteraUkr->Top!=255+1)

NoCorect++;

NePravilno->Caption=IntToStr(NoCorect);

slitera=UkrWord();

LiteraUkr->Top=8;

Randomize;

int lran;

lran=random(623)+8;

LiteraUkr->Left=lran;

LiteraUkr->Caption=slitera; LiteraUkr->Show(); }

}

if (rezhim==3){

LiteraRus->Top=(LiteraRus->Top)+1;

if (LiteraRus->Top>225) {

if (LiteraRus->Top!=255+1)

NoCorect++;

NePravilno->Caption=IntToStr(NoCorect);

slitera=RusWord();

LiteraRus->Top=8;

Randomize;

int lran;

lran=random(623)+8;

LiteraRus->Left=lran;

LiteraRus->Caption=slitera; LiteraRus->Show(); }

}

//-----Нижче оформлений процес підсвітки падаючої літери на віртуальній клавіатурі

if (rezhim==1) {

if (slitera=='q') q->Font->Color=clRed; else q->Font->Color=clBlack;

if (slitera=='w') w->Font->Color=clRed; else w->Font->Color=clBlack;

if (slitera=='e') e->Font->Color=clRed; else e->Font->Color=clBlack;

if (slitera=='r') r->Font->Color=clRed; else r->Font->Color=clBlack;

if (slitera=='t') t->Font->Color=clRed; else t->Font->Color=clBlack;

if (slitera=='y') y->Font->Color=clRed; else y->Font->Color=clBlack;