Язык программирования Delphi

Автор работы: Пользователь скрыл имя, 06 Января 2014 в 06:04, курсовая работа

Краткое описание

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

Содержание

Введение 3
I. Язык программирования Delphi 4
1.1. Описание среды языка Delphi. 4
2.1. Описание тренажера. 8
2.1.1 Минимальные технические требования. 9
2.1.2 Инструкция пользователю. 10
2.2.4 Аналоги программы 11
Заключение. 13
Список литературы 14
Приложение 16

Прикрепленные файлы: 1 файл

курсовой с листингом.DOC

— 310.50 Кб (Скачать документ)



Министерство образования  и науки Республики Казахстан

КГКП колледж радиотехники и связи

Предметно-цикловая комиссия преподавателей информатики и программирования

 

УТВЕРЖДАЮ

Зам. директора по УР

_________ Т.В. Дружинина

«___»__________2011 г.

 

 

 

 

 

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовому проекту на тему:

 

«_______________»

 

Автор курсового проекта _______   __________________


 

Обозначение курсового проекта  КРиС.1304043.__.__

Специальность 1304000 «Вычислительная техника и программное обеспечение (по видам)»

Квалификация  1304043 «Техник – программист»

 

Руководитель  проекта ______________ ___________________


 

 

 

 


*

 

Содержание

 

 

 

Введение

 

1. Язык программирования Delphi

1.1. Описание среды языка Delphi.

 

Delphi – мощная система визуального объектно-ориентированного проектирования, позволяющая решать множество задач, в частности:

  • Создавать законченные приложения для Windows самой различной направленности, от чисто вычислительных и логических, до графических и мультимедиа.
  • Быстро создавать (даже начинающим программистам) профессионально выглядящий оконный интерфейс для любых приложений, написанных на любом языке; интерфейс удовлетворяет всем требованиям Windows и автоматически настраиваться на ту систему, которая установлена на компьютере пользователя, поскольку использует многие функции, процедуры, библиотеки Windows.
  • Создавать свои динамически присоединяемые библиотеки(DLL) компонентов, форм, функций, которые затем можно использовать из других языков программирования.
  • Создавать мощные системы работы с локальными и удаленными базами данных любых типов; при этом имеются средства автономной отладки приложений с последующим выходом в сеть.
  • Формировать и печатать сложные отчеты, включающие таблицы, графики и т. п.
  • Создавать справочные системы (файлы.hlp), как для своих приложений, так и для любых других, с которыми, можно работать не только из приложений, но и просто через Windows.
  • Создавать профессиональные программы установки для приложений Windows, учитывающие всю специфику и все требование Windows.

Среда Delphi – это сложный механизм, обеспечивающий высокоэффективную работу программиста (иногда ее называют ИСР - Интегрированная Среда Разработчика). Визуально она реализуется несколькими одновременно раскрытыми на экране окнами. Окна могут перемещаться по экрану, частично или полностью перекрывая друг друга, что обычно вызывает у пользователя, привыкшего к относительной «строгости» среды текстового процессора Word или табличного процессора Exel, ощущение некоторого дискомфорта. После приобретения опыта работы с Delphi это ощущение пройдет, и вы научитесь быстро отыскивать нужное окно, что бы изменить те или иные функциональные свойства создаваемой вами программы, ибо каждое окно несет в себе некоторую функциональность, то есть, предназначено для решения определенных задач.


 


(Наиболее важные окна Delphi: 1-главное окно;      2-окно формы; 3-окно кода программы; 4-окно Инспектора объектов; 5-окно браузера).

 Запустите Delphi – и вы увидите нечто похожее на рисунке РИС.1. На нем изображены четыре наиболее важных окна  Delphi: главное окно (оно имеет заголовок   Delphi 5-Project1), окно формы (заголовок Form1), окно Инспектора Объектов (Object Inspector)и окна кода программы (Unit1.pas). С лева в окне кода располагается вспомогательное окно браузера (на рисунке помечено цифрой 5), с помощью которого можно просматривать структуру всех объявлений в окне кода.

Чтобы упорядочить окна так, как  они показаны на рисунке, вам придется вручную изменить их положение и  размеры, так как обычно окна кода программы почти полностью перекрыто  окном формы. Впрочем, добиваться максимального  сходства того, что вы видите на экране вашего персонального компьютера, с изображением, показанным на рис.1, вовсе не обязательно: расположение и размеры окон никак не влияют на их функциональность; если вы не видите на экране окна кода, но хотите его увидеть, просто нажмите клавишу F12. Повторное нажатие F12 вновь активизирует окно формы и так далее – эта клавиша работает как двоичный переключатель, попеременно показывая окно формы или окно кода программы.

При первом запуске программы  Delphi поверх всех окон, показанное на рис.2

Рис.2 Новинки языка

 

С помощью этого окна вы сможете  получить доступ к Web – страницам корпорации Inprise для просмотра самой свежей информации о корпорации и ее программных продуктах, копирования дополнительных файлов, чтения ответов на наиболее часто задаваемые вопросы и так далее. При повторных запусках Delphi это окно появляется автоматически с некоторой периодичностью, определяемой настройками на странице окна Tools|Environment Options,связанной с закладкой Delphi Direct. Вы также сможете его вызвать в любой момент с помощью Help| Delphi Direct главного меню.

 

 2.1. Описание тренажера.

 

При открытии главной  формы вы увидите:


 

 

 

 

 

 

 


 

Рис.3   Главная форма

 

 

В левом верхнем углу Главное меню игры(1), состоящее из двух разделов:

    1. Уроки:
      • Загрузить;
      • Урок 1;
      • Урок 2;
      • Урок 3;
    2. Справка:
      • О программе;
      • Автор;

 

2.1.1 Минимальные технические требования.

 

Для нормальной работы программы  не обходимо:

    1. CPU PENTIUM от 300MHz и выше;
    2. Video Blaster от 8 MB;
    3. Оперативной памяти(RAM) 64 MB;
    4. Операционная система Widows 9x/Me/2000/XP;
    5. Мышь (Mouse);

 

2.1.2  Инструкция пользователю.

 

Предложенная программа предназначена  для приобретения навыков работы с клавиатурой.

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

    1. загрузить программу;
    2. в появившемся окне в главном меню Уроки нажать кнопу «Загрузить», при этом появиться диалоговое окно требующее загрузки файла-урока;
    3. либо можно загрузить готовые уроки разного уровня из меню Уроки;
    4. после нажатия кнопки на экране будут появляться буквы. Для облегчения нахождения букв, на экране изображена клавиатура с подсказкой в виде утопленных клавиш.

 

2.2.4 Аналоги программы

 

Игра «Аленка»

 

игра «MTG»

 

 

 

 

Игра «PROBA8»

 

 Заключение.

 

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

 

Список литературы

  1. Когловский М.Р., "Технология баз данных на персональных ЭВМ", Москва, 'Финансы и статистика', 1992 г.
  2. Шумаков П. В., "Delphi 3.0 и создание баз данных". Москва 1997г.
  3. Джон Матчо, Дэвид Р.Фолкнер. «Delphi» — пер. с англ. — М.:Бином, 1995г.
  4. A.M.Епанешников. Епанешников В.А., "Программирование в среде Delphi 2.0",М.: Диалог-Мифи, 1997г.-235с.
  5. Дж. Мартин., "Организация баз данных в вычислительных системах",М: Мир 1978г.
  6. С.М.Диго, "Проектирование и использования баз данных". Москва: Финансы и статистика 1995.
  7. Горев А., Ахаян Р., Макашарипов С., "Эффективная работа с СУБД".СПб.:Питер, 1997.— 704 с.,ил.
  8. Атре Ш., "Структурный подход к организации баз данных". – М.: Финансы и статистика, 1983. – 320 с.
  9. Бойко В.В., Савинков В.М., "Проектирование баз данных и информационных систем". – М.: Финансы и статистика, 1989. – 351 с.
  10. Тиори Т., Фрай Дж., "Проектирование структур баз данных". В 2 кн., – М.: Мир, 1985. Кн. 1. – 287 с.: Кн. 2. – 320 с.
  11. "Paradox for Windows: Практическое руководство". Под редакцией Оспищева Д. А. Издательство АОЗ "Алевар", 1993.
  12. Брябрин В.М., "Программное обеспечение персональных ЭВМ", Москва, 'Hаука', 1989 г.
  13. Шафрин Ю.А., "Основы компьютерной технологии". М., 1998
  14. "Рекоммендации по общепользовательскому интерфейсу", Microsoft, редакция 1995г.
  15. Тейксейра, Стив, Пачеко, Ксавье. Delphi 4. "Руководство разработчика".СПб:Издательский дом 'Вильямс' 1999г.-912с.
  16. Ден Оузьер, Стив Гробман, Стив Батсон. DELPHI. "Освой самостоятельно" Перевод с англ.-М.:Восточная Книжная Компания, 1997г.-624с.

 

Приложение

unit Unit1;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, ExtCtrls, Menus, ToolWin, ActnMan, ActnCtrls, ComCtrls;

 

type

  TForm1 = class(TForm)

    Button2: TButton;

    Image1: TImage;

    Label1: TLabel;

    Timer1: TTimer;

    Label2: TLabel;

    MainMenu1: TMainMenu;

    f1: TMenuItem;

    N1: TMenuItem;

    N2: TMenuItem;

    Timer2: TTimer;

    Label3: TLabel;

    Label5: TLabel;

    Label6: TLabel;

    Label7: TLabel;

    Label8: TLabel;

    Label9: TLabel;

    Image2: TImage;

    N3: TMenuItem;

    N4: TMenuItem;

    OpenDialog1: TOpenDialog;

    Label10: TLabel;

    Label11: TLabel;

    Image3: TImage;

    Label4: TLabel;

    Button1: TButton;

    Shape1: TShape;

    N11: TMenuItem;

    N21: TMenuItem;

    N31: TMenuItem;

    procedure FormCreate(Sender: TObject);

    procedure FormKeyPress(Sender: TObject; var Key: Char);

    procedure N1Click(Sender: TObject);

    procedure FormKeyUp(Sender: TObject; var Key: Word;

      Shift: TShiftState);

    procedure Timer2Timer(Sender: TObject);

    procedure N3Click(Sender: TObject);

    procedure N4Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure N11Click(Sender: TObject);

    procedure N21Click(Sender: TObject);

    procedure N31Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form1: TForm1;

  press,x,up,procent,p,l:integer;

  chas1,min1,sec1,msec1,chas2,min2,sec2,msec2:word;

  stroka:string;

  i,osx,osy,colshape:integer;

  file1:textfile;

  sk1,sec1real,msreal,sk,j,obsk,e,f:real;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.FormCreate(Sender: TObject);

begin

  colshape:=0;

button1.Visible:=false;

button2.Visible:=false;

  shape1.Visible:=false;

  label10.Visible:=false;

  button2.Click;

  label9.Caption:=inttostr(press);

  label6.Caption:=floattostr(obsk)+' '+'симв/мин';

  label3.Caption:=floattostr(x)+' '+'симв/мин';

  timer2timer(timer2);

  Image1.Canvas.Rectangle(0,0,537,145);

  image3.Picture.LoadFromFile('Клавиатура.bmp');

end;

 

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);

var   begtime,vreme:tdatetime;

   begin

     if (form1.N4.Checked)  or (form1.n11.checked) or (form1.n21.checked) or (form1.n31.checked) then

       begin

       label11.Caption:='0';

        image2.Canvas.MoveTo(osx,osy);     //позиция графика на картинке после                                     

          if i>=1 then                    // загрузки задания

            begin

              timer1.Enabled:=false;

            end;

          vreme:=time;

          DecodeTime((vreme), chas2, min2, sec2, msec2);

          if sec2<sec1 then                                //если секунды2<секунды1

            begin

              sec2:=(sec2+60-sec1);

            end

               else

                  begin

                     sec2:=sec2-sec1;

                  end;

          if msec2<msec1 then                               //если милисекунды2<милисекунды1

             begin

                msec2:=msec2+1000-msec1;

             end

               else

                  begin

                     msec2:=msec2-msec1;

                  end;

     sec1real:=round(sec2);

     msreal:=round(msec2);

     sk1:=sec1real+(msreal/1000);

     sk:=(60 / sk1);                                //скорость набора за 1 минуту

     obsk:=(obsk+sk)/ 2;

     label6.Caption:=floattostr(round(obsk))+'симв/мин';

     image2.Canvas.Pen.Color:=clblack;

     label3.Caption:=floattostr(round(sk))+'симв/мин';

     label1.Caption:='0 %';

     setlength(stroka,length(stroka));

     image1.Canvas.Font.Height:=40;

     image1.Canvas.Font.Name:='MS Referense Sans Serif';

     image1.Canvas.Font.Color:=clblue;

     image1.Canvas.TextOut(187,5,stroka[i]);                                        //все символы строчные

      if (key=(stroka[i]))  then

       begin

         button1.Click;

         label11.Caption:=inttostr(i);       // выводит при помощи Label11

         osx:=osx+4;                        //  количество набранных символов

         j:=113-(obsk / 3);

         osy:=trunc(j);

         image2.Canvas.Pen.Width:=2;

         image2.Canvas.Pen.Color:=clgreen;

         image2.canvas.LineTo(osx,osy);

           if i>=100 then

             begin

               image2.Canvas.TextOut(15,2,'110 c. -- 120 с. -- 130 c. -- 140 с. -- 150 c. -- 160 с. -- 170 c. -- 180 с. -- 190 c. -- 200 с.');

             end

                else

                   begin

                     image2.Canvas.TextOut(15,2,'-0 c. -- 10 c. --  20 с. -- 30 c. --  40 с. -- 50 c. --  60 с. -- 70 c. --  80 с. -- 90 c. --  100 с.');

                   end;

         image2.canvas.moveto(osx,osy);

           if osx>410  then

             begin

                button2.Click;

                osx:=15;

                image2.Canvas.TextOut(15,2,'110 c. -- 120 с. -- 130 c. -- 140 с. -- 150 c. -- 160 с. -- 170 c. -- 180 с. -- 190 c. -- 200 с.');

             end;

          image2.Canvas.Font.Color:=clred;

          f:=f+e;

          procent:=round(f);

          label1.Caption:=inttostr(procent)+'%';

          timer1.Enabled:=true;

          begtime:=time;

          DecodeTime((BegTime), chas1, min1, sec1, msec1);

          Image1.Canvas.Rectangle(0,0,377,49);

          image1.Canvas.TextOut(187,5,stroka[i+1]);

          i:=i+1;

          button1.Click;

          n4.Checked:=false;                //n4.Checked:=false, иначе при удерживании любой

          if stroka[i]='' then          // клавиши начнет повторно выполняться событие OnKeyPress,

               begin                        // и вызовет ошибку, если key=stroka[i]=false;

                 label1.Caption:='100 %' ;

                 showmessage('Поздравляю! Ты выполнил задание.')

                end;

         end

           else                                //если нажата неверная клавиша

              begin

                        press:=press+1;

                        showmessage('Ошибка!!!');

                        label9.Caption:=inttostr(press);

                        Image1.Canvas.Rectangle(0,0,377,49);

                        image1.Canvas.TextOut(187,5,stroka[i]);

Информация о работе Язык программирования Delphi