Смекни!
smekni.com

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

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;

}

if (rezhim==2) {

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) {

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 ((chas1==chas)&&(chas!=0)){

Timer2->Enabled=false; Timer1->Enabled=false;

if (rezhim==1) LiteraEng->Hide();

if (rezhim==2) LiteraUkr->Hide();

if (rezhim==3) LiteraRus->Hide();

Form2->Show();

Form2->NePravilno->Caption=IntToStr(NoCorect);

Form2->Pravilno->Caption=IntToStr(Corect);

Form2->All->Caption=IntToStr(Corect+NoCorect);

if (NoCorect!=0){

float kk;

kk=(float)Corect/(float)NoCorect;

Form2->Koef->Caption=FloatToStr(kk);

}

else

Form2->Koef->Caption=IntToStr(Corect);

}

}

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

//натискається будь-яка клавіша. Виконується перевірка правильності натиснутої кнопки

void __fastcall TTrainForm::FormKeyPress(TObject *Sender, char &Key)

{

skey=Key;

if (skey==slitera){

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

if (rezhim==2) slitera=UkrWord();

if (rezhim==3) slitera=RusWord();

Corect++;

if (rezhim==1){

LiteraEng->Hide(); LiteraEng->Top=255;

}

if (rezhim==2){

LiteraUkr->Hide(); LiteraUkr->Top=255;

}

if (rezhim==3){

LiteraRus->Hide(); LiteraRus->Top=255;

}

Pravilno->Caption=IntToStr(Corect);

} else {

NoCorect++; NePravilno->Caption=IntToStr(NoCorect);

}

}

//Відкривається нове вікно з підсказками по роботі з клавіатурою-------------

void __fastcall TTrainForm::N8Click(TObject *Sender)

{

TrainForm->Hide();

Form3->Show();

}

Лістинг 2. (Unit2.cpp)

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

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

__fastcall TForm2::TForm2(TComponent* Owner)

: TForm(Owner)

{

}

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

void __fastcall TForm2::OKClick(TObject *Sender)

{

TrainForm->Pravilno->Caption=0;

TrainForm->NePravilno->Caption=0;

Form2->Close();

}

Лістинг 3. (Unit3.cpp)

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "Unit3.h"

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm3 *Form3;

fastcall TForm3::TForm3(TComponent* Owner)

: TForm(Owner)

{

}

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

void __fastcall TForm3::Button1Click(TObject *Sender)

{

Form3->Hide();

TrainForm->Show();

}

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

void __fastcall TForm3::FormClose(TObject *Sender, TCloseAction &Action)

{

TrainForm->Show();

}


Результат роботи програми.

1. Початковий стан

2. Після вибору Файл->Опції


3. Після вибору Файл->Тренажер

4. Після вибору Інформація->Підказки по роботі з клавіатурою

5. Після закінчення вибраного часу


Висновки

В нашій роботі були проаналізовані питання відносно теоретичної основи побудови програм з простим інтерфейсом користувача в середовищі Borland C++ Builder а також проблеми, які виникають при цьому. Результатом цього є програма яка реалізує процестренування на клавіатурі. Дана програма має досить простий інтерфейс та алгоритмічну структуру, завдяки чому вона зрозуміла кожному користувачу.


Використана література

1. А.Я.Архангельский. Программирование в С++ Builder 6. – M.: ЗАО “Издательство Бином”, 2003. – 1152 с.

2. А.Я.Архангельский. Решение типовых задач в С++ Builder 6. – M.: ЗАО “Издательство Бином”, 2003. – 520 с.

3. А.Я.Архангельский. Язык SQL в С++ Builder 5. – M.: ЗАО “Издательство Бином”, 2000. – 224 с.

4. Ф.А.Фридман. Основы объектно-ориентированного программирования на языке С++. – М.: “Горячая линия”, 2001. – 232с.

5. В.Шамис. BorlandC++ Builder 6. – Санкт-Петербург: “Питер”, 2003. – 800с.

6. Холингвэрт, Сворт, Кэшмэн, Густавсон. BorlandC++ Builder 6. Руководство разработчика. – М.: “Вильямс”, 2003, 976 с.

7. А.Хоменко. Работа с базами данных в С++ Builder 6. – M.: “BHV-СПб”, 2005. – 400 с.