3
Министерство образования и науки Украины
Луганский национальный университет имени Тараса Шевченко
Ровеньковский факультет
Кафедра информационных технологий и систем
Курсовой проект
на тему: «Создание приложения «Клавиатурный тренажер»
Выполнила:
студентка 3 курса специальности «Информатика»
Дятлюк Лариса Витальевна.
Руководитель:
Логинов Анатолий Владимиравич
Ровеньки -2008
Содержание
Введение
1. Инструкция пользователя
2. Разработка программы: описание алгоритма решения задачи
3. Описание программы
Вывод
Литература
Приложение А
Введение
В связи с бурным развитием e-mail, ICQ, у многих пользователей Интернет возникла потребность быстро вводить текст с клавиатуры. Это и послужило появлению разнообразных программ-тренажеров, для получения и усовершенствования навыка набора текста.
Клавиатурный тренажер - это эффективная программа для освоения слепой машинописи.
В ходе разработки курсового проекта мной была написана программа клавиатурный тренажер. Эта программа проста в использовании и будет интересна, как для начинающего, так и для опытного пользователя.
Разработанная программа доступна всем и может использоваться на любом предприятии, в том числе и школах.
1. Инструкция пользователя
Рис. 1
Чтобы работать с программой необходимо нажать:
· New test - для начала теста;
· Stop - для окончания теста и вывода информации о результате;
· Exit - для выхода из тренажера.
Уровень сложности изменяется автоматически, при правильном нажатии некоторого количества символов.
2. Разработка программы: описание алгоритма решения задачи
В форме сверху вниз в случайно выбранной по горизонтали позиции падает случайно выбранная латинская буква. Пока она падает, пользователь должен успеть нажать ее на клавиатуре. Затем начинает падать новая буква. В конце игры пользователю выдается, сколько раз он успел нажать правильную букву.
Описание алгоритма решения задачи procedure TForm1.Button1Click(Sender: TObject); procedure TForm1.Timer1Timer(Sender: TObject); procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char).
3. Описание программы
Программа клавиатурный тренажер. В форме, на панели, по таймеру сверху вниз в случайно выбранной по горизонтали позиции падает случайно выбранная маленькая латинская буква. В программе использованы 2 таймера: один - для самого события падающей буквы и второй - для вывода реального времени в строке статуса.
Пока буква падает, пользователь должен успеть нажать ее на клавиатуре. Затем начинает падать новая буква. Так же сам тренажер имеет функцию «Уровня скорости» - это когда после определенного количества правильных нажатий интервал таймера начинает уменьшаться, что заставляет новые буквы падать с ускорением.
В конце игры пользователю выдается, сколько раз он успел нажать правильную букву.
Форма содержит:
1. 2-х Panel
§ Panel1 - для определения границ тренажера
§ Panel2 - для падающих букв
2. 3-х Buttons:
§ New test - для начала теста
§ Stop - для окончания теста и вывода информации о результате
§ Exit - для выхода из тренажера
3. Label - для показа уровня скорости
4. StatusBar - для вывода результатов и реального времени (что бы долго не засиживались)
Выводы
В ходе работы были получены следующие результаты:
Рис. 2
Форма выводит на панели статуса некоторую меняющуюся информацию (результаты и реальную дату и время). Несколькими способами используется компонент - Таймер:
С помощью таймера:
· Приводить в движение компоненты
· Изменять скорость движения компонентов
· Выводить реальную дату и время
Рекомендуется, каждый день минут по 10-30, а потом достаточно заниматься раза 2-4 в неделю по 5-10 минут.
Приложение А
unit Lab10;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
Button1: TButton;
Panel1: TPanel;
Button2: TButton;
Panel2: TPanel;
Button3: TButton;
StatusBar1: TStatusBar;
Timer2: TTimer;
Label1: TLabel;
Label2: TLabel;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure Button3Click(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
Form1: TForm1;
count, uncount, x: integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.Focused;
Panel2.Visible := true;
Panel2.Top := 0;
Randomize;
Panel2.Caption := Chr(Random(26)+97) ;
count := 0;
uncount := 0;
x := 1;
Label1.Caption := Level + IntToStr(x);
Timer1.Enabled := true;
end;
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Panel2.Caption = key then
begin
Inc(count);
StatusBar1.Panels[1].Text := IntToStr(count);
Panel2.Top := Panel1.Height;
end;
if count = x * 10 then
begin
Inc(x);
Label1.Caption := Level + IntToStr(x);
if Timer1.Interval <= 250 then Timer1.Interval := Timer1.Interval - 25
else
if Timer1.Interval <= 100 then Timer1.Interval := 100
else
Timer1.Interval := Timer1.Interval - 250;
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Randomize;
if Panel1.Height > Panel2.Top then
Panel2.Top := Panel2.Top + 20
else
begin
Randomize;
Panel2.Caption := Chr(Random(26)+97);
Panel2.Left := Random(Panel1.Width - Panel2.Width);
Panel2.Top := 0;
nc(uncount);
StatusBar1.Panels[3].Text := IntToStr(uncount)
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Timer1.Enabled := False;
Panel2.Visible := False;
ShowMessage(IntToStr(count) + times correctly!)
end;
procedure TForm1.Timer2Timer(Sender: TObject);
var DateTime: TDateTime;
begin
DateTime := TIME;
StatusBar1.Panels[4].Text := DateToStr(Date) + + TimeToStr(DateTime);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Close;
end;
end.
! | Как писать курсовую работу Практические советы по написанию семестровых и курсовых работ. |
! | Схема написания курсовой Из каких частей состоит курсовик. С чего начать и как правильно закончить работу. |
! | Формулировка проблемы Описываем цель курсовой, что анализируем, разрабатываем, какого результата хотим добиться. |
! | План курсовой работы Нумерованным списком описывается порядок и структура будующей работы. |
! | Введение курсовой работы Что пишется в введении, какой объем вводной части? |
! | Задачи курсовой работы Правильно начинать любую работу с постановки задач, описания того что необходимо сделать. |
! | Источники информации Какими источниками следует пользоваться. Почему не стоит доверять бесплатно скачанным работа. |
! | Заключение курсовой работы Подведение итогов проведенных мероприятий, достигнута ли цель, решена ли проблема. |
! | Оригинальность текстов Каким образом можно повысить оригинальность текстов чтобы пройти проверку антиплагиатом. |
! | Оформление курсовика Требования и методические рекомендации по оформлению работы по ГОСТ. |
→ | Разновидности курсовых Какие курсовые бывают в чем их особенности и принципиальные отличия. |
→ | Отличие курсового проекта от работы Чем принципиально отличается по структуре и подходу разработка курсового проекта. |
→ | Типичные недостатки На что чаще всего обращают внимание преподаватели и какие ошибки допускают студенты. |
→ | Защита курсовой работы Как подготовиться к защите курсовой работы и как ее провести. |
→ | Доклад на защиту Как подготовить доклад чтобы он был не скучным, интересным и информативным для преподавателя. |
→ | Оценка курсовой работы Каким образом преподаватели оценивают качества подготовленного курсовика. |
Курсовая работа | Деятельность Движения Харе Кришна в свете трансформационных процессов современности |
Курсовая работа | Маркетинговая деятельность предприятия (на примере ООО СФ "Контакт Плюс") |
Курсовая работа | Политический маркетинг |
Курсовая работа | Создание и внедрение мембранного аппарата |
Курсовая работа | Социальные услуги |
Курсовая работа | Педагогические условия нравственного воспитания младших школьников |
Курсовая работа | Деятельность социального педагога по решению проблемы злоупотребления алкоголем среди школьников |
Курсовая работа | Карибский кризис |
Курсовая работа | Сахарный диабет |
Курсовая работа | Разработка оптимизированных систем аспирации процессов переработки и дробления руд в цехе среднего и мелкого дробления Стойленского ГОКа |