Разработка учебника по изучению языка Delphi в среде программирования Delphi 5.0
Delphi как среда разработки программ, ориентированных на работу в Windows. Назначение и преимущество использования электронных учебников. Описание возможностей среды Delphi 5 для разработки электронного учебника. Варианты применения служб Internet.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 13.07.2011 |
Размер файла | 3,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Введение
В настоящее время в компьютерном мире существует множество языков программирования. Программу, выполняющую одни и те же действия, можно написать на Бейсике (ВАSIС), Паскале (Рasсаl) Си (С) Какой из языков лучше? Ответ на этот вопрос не так прост. Однако можно с уверенностью сказать, что Раsсаl лучше других языков подходит для обучения программированию. И это не удивительно, ведь данный язык был разработан швейцарским ученым Н. Виртом, в том числе и для обучения программированию.
Язык программирования Раsсаl оказался настолько удачным, что с момента его появления за короткое время различными фирмами было создано достаточно большое количество компиляторов (компилятор - программа, переводящая инструкции языка программирования, языка высокого уровня, на язык инструкций процессора вычислительной машины, язык низкого уровня)». Одной из наиболее удачных стала разработка американской фирмы Borland, в которой были объединены редактор текста и высокоэффективный компилятор. Созданная система получила название Тurbо Раsсаl, а язык программирования, используемый в ней, стал называться Тurbо Раsсаl.
Совершенствуя Turbo Раsсаl, фирма Borland разрабатывала новые версии пакета. Так, в систему были внесены дополнения, позволяющие создавать большие программные проекты, что сделало ее привлекательной для профессиональных программистов. Со временем в Turbo Раsсаl появились средства, обеспечивающие поддержку концепции объектно-ориентированного программирования, и язык программирования Turbo Раsсаl стал называться Object Раsсаl.
Развитие вычислительной техники и технологии программирования привело к тому, что фирма Borland разработала принципиально новый программный продукт, который получил название Delphi.
Delphi - это среда разработки программ, ориентированных на работу в Windows. В основе идеологии Delphi лежит технология визуального проектирования и методология объектно-ориентированного программирования.
Первая версия, Delphi 1, работала в среде Windows 3.1. С появлением Windows 95 Вогland выпустила сначала 16-разрядную версию, Delphi 2, а затем значительно более совершенную 32-разрядную - Delphi 3. С появлением Windows 98 была выпущена четвертая версия. И вот теперь для разработчиков программ стала доступна Delphi 5 [1, c. 28].
программа электронный учебник delphi
1. Назначение и преимущество использования электронных учебников
Электронные учебники используются для интерактивного изучения каких либо дисциплин. Преимущество таких учебников состоит в том, что они легки в использовании, размещаются на гибких магнитных и оптических дисках, что существенно облегчает транспортировку, возможность копирования электронных учебников позволяет экономить денежные средства.
2. Описание возможностей среды DELPHI 5 для разработки электронного учебника
Delphi 5 является средой разработки, используемой прежде всего для поддержки и разработки приложений, предназначенных как для отдельных рабочих станций, так и для серверов. Delphi 5 может функционировать под управлением операционной системы Windows 95, Windows 98 или Windows NT.
Отличительными чертами рабочей среды Delphi 5 являются:
Большинство созданных с помощью Delphi приложений будут направлены главным образом на решение задач, связанных с производством и бизнесом; это значит, что обеспечение функционирования баз данных и создание отчетов будут наиболее часто решаемыми задачами.
Совместимость приложений становится все более важной. Помимо всего прочего, это обусловлено еще и бурным развитием аппаратного обеспечения (Hardware), в частности:
- широким распространением мобильных компьютеров;
- дальнейшим развитием технических средств, предназначенных для приема, воспроизведения и передачи информации следующих типов: цифровой текстовой, изображения и звука.
При рассмотрении приведенного выше списка становится ясно, что именно потребители, связанные с производством и бизнесом, нашли в Delphi 5 идеальное вспомогательное средство для решения своих задач.
Delphi 5 имеет графический пользовательский интерфейс, подобный используемому Microsoft в Visual Basic и C++. В настоящее время множество фирм приняли его в качестве стандарта для разработки интерфейсов собственных приложений [2, c. 36].
Поскольку пользовательский интерфейс создается визуально, о Delphi 5 говорят как о среде, предназначенной для быстрого создания приложений. Основной составляющей среды быстрого создания приложений является технология, получившая название Two Ways Tools. Это значит, что при размещении или изменении компонента в какой-либо форме соответствующий программный код будет автоматически дополнен или модифицирован. И наоборот, все изменения, которые вносятся в программный код при разработке приложения, автоматически отражаются на функциональных свойствах компонентов формы. Для создания пользовательского интерфейса Delphi 5 предлагает широкий набор вспомогательных средств.
Если вы еще не знакомы с визуальной технологией создания пользовательского интерфейса, было бы целесообразно приобрести такие знания. Эта технология, без преувеличения, является сегодня стандартной технологией разработки новых приложений.
Другой аспект графической среды разработки - это замечательная сама по себе справочная система. Delphi 5 предоставляет в ваше распоряжение средства, позволяющие снабжать приложения контекстно-зависимой справочной информацией (Help) [2, c. 45].
Delphi 5, как и всякая современная среда разработки приложений, основана на объектно-ориентированном программировании (ООП). Эта технология программирования является той основой, которая и позволяет реализовать все функциональные возможности Delphi 5. При создании приложений на основе готовых компонентов с использованием свойств, методов и заранее определенных обработчиков событий можно обходиться программным кодом небольшого объема. Для разработчика это означает, что при разработке пользовательского интерфейса своих приложений он может получить значительную экономию времени.
Поддержка разработки бизнес приложений, использующих базы данных и генераторы отчетов, осуществляется в Delphi 5 очень эффектным способом. Здесь фирма Borland применила весь свой технологический опыт, накопленный за прошедшие годы. При работе в среде Delphi 5 посредством BDE (Borland Database Engine) можно получать прямой доступ к dBase-, Paradox-, FoxPro-, Access- и ASCII-таблицам баз данных. Набор драйверов Borland SQL Links for Windows обеспечивает все необходимые соединения с SQL-серверами.
С Delphi 5 поставляется СУБД InterBase, которая обычно используется для тестирования приложений, разрабатываемых для работы с удаленными SQL-серверами Oracle, Sybase, Informix, InterBase NT и DB2. Для того чтобы получить доступ к другим базам данных или другим форматам данных посредством BDE, нужно воспользоваться ODBC-драйвером. Таким образом, Delphi 5 можно использовать при создании приложений типа клиент / сервер любого масштаба. В пятой версии Delphi появился набор специализированных компонентов для работы с СУБД InterBase, не требующих использования BDE и более полно использующих особенности сервера InterBase, чем стандартные компоненты.
Для создания отчетов в Delphi 5 имеется набор интегрированных компонентов TQuickReport.
Для программирования непосредственного доступа к аппаратному обеспечению Delphi 5 предоставляет в распоряжение программиста интегрированный ассемблер. Благодаря этому Intel-Assembler-код может непосредственно включаться в код программ Object Pascal. Интегрированный ассемблер в значительной степени использует синтаксис, поддерживаемый компиляторами Borland Turbo Assembler и Macro Assembler фирмы Microsoft. Интегрированный ассемблер Delphi 5 включает в себя все команды процессоров 8086/8087 и 80386/80387, а также некоторые расширения Turbo Assembler. Интегрированный ассемблер Delphi представляет собой разновидность ассемблер-компилятора, использующего синтаксис языка Object Pascal.
После запуска Delphi 5 на экране открывается четыре окна интегрированной среды разработки приложения: главное окно, окна проектировщика форм, редактора кода и инспектора объектов. На рисунке 1 показан вид экрана после запуска Delphi 5 [3, c. 45].
Рисунок 1 - Вид экрана после запуска Delphi 5
В верхней части экрана расположено главное окно, которое показано на рисунке 2, в нём находятся строка главного меню, панели инструментов (Standard, View, Debug, Custom) и палитра компонентов. Главное окно программы остается открытым все время, пока остается загруженным Delphi 5.
Рисунок 2 - Главное окно.
Окно редактора кода (Code Editor) имеет заголовок Unit1.pas, оно представлено на рисунке 3. В редакторе кода могут быть открыты несколько файлов. Каждый открытый файл размещается на отдельной странице, а его название отображается в верхней части окна на отдельной вкладке.
Рисунок 3 - Окно редактора кода
При разработке приложений часто приходится использовать инспектор объектов, рисунок 4. Если окна инспектора объектов нет на экране, его можно открыть при помощи команды Инспектор объектов меню Вид или нажать клавишу F11. Окно Инспектора объектов содержит две страницы, каждую из которых можно активизировать, выполнив щелчок на вкладке с соответствующим названием. Первая страница имеет название Properties, Левая колонка этой страницы содержит список всех свойств редактируемого компонента, доступных во время проектирования. Вторая страница называется Events. В ее левой колонке перечислены все имеющееся обработчики событий компонента. В правых колонках обеих страниц могут устанавливаться значения соответствующих свойств или обработчиков событий. Функциональные возможности компонента, используемого в проектируемом приложении, определяется путем присвоения свойствам компонента определенных значений и связывания с обработчиками событий определенных процедур. Процедуры обработки событий published - методы компонента, которые выполняются при возникновении определенного события [10, c. 43].
Таким образом, инспектор объектов является инструментом, который используется для формирования внешнего вида и функциональных возможностей формы и компонентов в процессе разработки приложения.
Рисунок 4 - Инспектор объектов
3. Краткое описание разделов электронного учебника
Введение:
- что нового?
- введение;
- палитра компонентов;
Типы данных:
- простые типы данных;
- процедурные типы;
- указательные типы;
- структурные типы;
- строковые типы;
- типы данных;
Создание приложений:
- работа с формами;
- передовые технологии программирования;
- опции проекта;
- повторное использование приложений;
- создание приложений MDI;
- создание консольного приложения;
- создание приложений SDI;
Создание элементов управления ActiveX:
- среда разработки Delphi ActiveX (DAX);
- распространение элементов управления ActiveX и форм ActiveForm в Web;
- создание форм ActiveForm;
- регистрация и установка элемента управления ActiveX;
- элементы управления ActiveX;
- библиотеки типов;
Тестирование и отладка:
- тестирование;
- обработка ошибок;
- силовая отладка;
- интегральный отладчик Delphi;
Практикум:
- урок 1;
- урок 2;
- урок 3;
- урок 4;
- урок 5;
- урок 6;
- урок 7;
- урок 8;
4. Варианты применения служб Internet для дистанционного обучения
Одна из современных тенденций заключается в том, что по мере внедрения компьютерной техники взаимодействие между людьми всё меньше требует непосредственного общения.
Его заменяют:
- Электронная почта
- Телеконференции
- Электронные форумы и т.д.
Отношения между работодателем и служащим приобретают форму телеворкинга (telework), a между студентами и преподавателями - форму дистанционного обучения (distance learning).
Учитывая, что большинство современных высокотехнологичных компаний требуют от своих сотрудников постоянной переподготовки, процессы организации телеворкинга и дистанционного обучения тесно увязаны между собой.
Новая технология позволяет экономить огромные ресурсы на командировки, аренду офисного оборудования и т.д.
Уже сегодня десятки миллионов людей в мире работают и учатся не выходя из дома, и, видимо, эта тенденция будет развиваться
Интернет - технологии дистанционного обучения особенно эффективны, когда количество обучаемых по определенной специальности превышает 100-200 человек. Поэтому не удивительно, что данный подход широко используют крупные корпорации, концерны и банки всего мира.
Дистанционное обучение можно определить как «тип образования, при котором студенты работают самостоятельно дома и контактируют с преподавателем и другими студентами посредством e-mail, электронных форумов, видеоконференций и других форм сетевого общения».
Дистанционное обучение - это не средство замены преподавателя компьютерной программой, а средство взаимодействия с преподавателем на базе компьютерных технологий.
Система Дистанционного обучения должна не только предоставить студенту учебную программу, но и обеспечить ему возможность сетевого контакта с преподавателем, с тем чтобы он мог задавать преподавателю вопросы (и главное - оперативно получать комментарии от него), а также общаться с другими студентами, изучающими тот же курс.
Задача организации Дистанционного обучения включает два аспекта:
- Обеспечение контента.
- Подбор штата квалифицированных преподавателей.
У нас в стране Системы дистанционного обучения относятся к классу BII и BIII.
Наиболее популярны четыре системы:
- АСДО «Доцент»
- «Прометей»
- ИДО МЭСИ
- «ОРОКС» - сетевая оболочка
Система «Доцент» имеет наиболее привлекательные характеристики по сравнению с основными конкурентами.
Структура дистанционного учебного центра построена на основе автоматизированных систем «Доцент».
Административная подсистема включает в себя автоматизированные рабочие места, обеспечивающие работу учебного центра:
- «Администратор»
- «Куратор»
- «Преподаватель»
Администратор - осуществляет руководство учебным центром (принимает на работу сотрудников, создает учебные группы и т.д.).
Куратор - отвечает за организацию учебного процесса или проведение тестирования по курсу.
Преподаватели - готовят учебно-методические материалы, ведут консультации, проверяют тестовые задания и курсовые работы.
Система «Прометей» - программная оболочка, которая обеспечивает дистанционное обучение и тестирование слушателей, а также позволяет управлять всей деятельностью виртуального учебного заведения.
«Прометей» имеет модульную масштабируемую структуру, состоящую из элементов:
- Типовой Web-узел
- Автоматизированные рабочие места
- Набор дополнительных модулей
5. Фрагменты листинга программы
После запуска программы появляется «ГЛАВНАЯ ФОРМА». При помощи этой формы пользователь управляет самой программой.
Рисунок 7 - «Главная форма»
Программный код «главной формы»:
unit MainUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
OleCtrls, SHDocVw, ComCtrls, ExtCtrls, ImgList, StdCtrls, jpeg, Buttons;
type
TMainForm = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Timer1: TTimer;
Panel4: TPanel;
WebBrowser1: TWebBrowser;
Panel3: TPanel;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
TabSheet4: TTabSheet;
TabSheet5: TTabSheet;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton11: TSpeedButton;
SpeedButton13: TSpeedButton;
SpeedButton14: TSpeedButton;
SpeedButton15: TSpeedButton;
SpeedButton19: TSpeedButton;
SpeedButton20: TSpeedButton;
SpeedButton21: TSpeedButton;
SpeedButton22: TSpeedButton;
SpeedButton23: TSpeedButton;
SpeedButton24: TSpeedButton;
SpeedButton25: TSpeedButton;
SpeedButton26: TSpeedButton;
SpeedButton27: TSpeedButton;
SpeedButton28: TSpeedButton;
SpeedButton30: TSpeedButton;
SpeedButton31: TSpeedButton;
SpeedButton32: TSpeedButton;
SpeedButton35: TSpeedButton;
SpeedButton36: TSpeedButton;
SpeedButton37: TSpeedButton;
SpeedButton38: TSpeedButton;
SpeedButton42: TSpeedButton;
SpeedButton44: TSpeedButton;
SpeedButton45: TSpeedButton;
TabSheet6: TTabSheet;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton9: TSpeedButton;
SpeedButton10: TSpeedButton;
SpeedButton12: TSpeedButton;
SpeedButton16: TSpeedButton;
SpeedButton17: TSpeedButton;
SpeedButton39: TSpeedButton;
SpeedButton40: TSpeedButton;
Image1: TImage;
procedure FormActivate (Sender: TObject);
procedure Timer1Timer (Sender: TObject);
procedure Image1MouseMove (Sender: Tobject
: TShiftState; X, Y: Integer);
procedure SpeedButton1Click (Sender: TObject);
procedure SpeedButton2Click (Sender: TObject);
procedure SpeedButton3Click (Sender: TObject);
procedure SpeedButton2MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure SpeedButton5Click (Sender: TObject);
procedure FormCreate (Sender: TObject);
procedure FormShow (Sender: TObject);
procedure Panel4Click (Sender: TObject);
procedure Panel4MouseMove (Sender: TObject; Shift:
TShiftState; X, Y: Integer);
procedure SpeedButton7Click (Sender: TObject);
procedure SpeedButton8Click (Sender: TObject);
procedure SpeedButton6Click (Sender: TObject);
procedure TabSheet1MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure SpeedButton13Click (Sender: TObject);
procedure SpeedButton14Click (Sender: TObject);
procedure SpeedButton21Click (Sender: TObject);
procedure SpeedButton20Click (Sender: TObject);
procedure SpeedButton19Click (Sender: TObject);
procedure SpeedButton15Click (Sender: TObject);
procedure SpeedButton22Click (Sender: TObject);
procedure SpeedButton28Click (Sender: TObject);
procedure SpeedButton26Click (Sender: TObject);
procedure SpeedButton27Click (Sender: TObject);
procedure SpeedButton25Click (Sender: TObject);
procedure SpeedButton24Click (Sender: TObject);
procedure SpeedButton23Click (Sender: TObject);
procedure SpeedButton30Click (Sender: TObject);
procedure SpeedButton37Click (Sender: TObject);
procedure SpeedButton36Click (Sender: TObject);
procedure SpeedButton35Click (Sender: TObject);
procedure SpeedButton32Click (Sender: TObject);
procedure SpeedButton31Click (Sender: TObject);
procedure SpeedButton38Click (Sender: TObject);
procedure SpeedButton45Click (Sender: TObject);
procedure SpeedButton44Click (Sender: TObject);
procedure SpeedButton42Click (Sender: TObject);
procedure SpeedButton11Click (Sender: TObject);
procedure SpeedButton1MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure SpeedButton5MouseMove (Sender: Tobject;
Shift: TShiftState; X, Y: Integer);
procedure SpeedButton3MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure SpeedButton4Click (Sender: TObject);
procedure SpeedButton4MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure SpeedButton9Click (Sender: TObject);
procedure SpeedButton10Click (Sender: TObject);
procedure SpeedButton12Click (Sender: TObject);
procedure SpeedButton16Click (Sender: TObject);
procedure SpeedButton17Click (Sender: TObject);
procedure SpeedButton40Click (Sender: TObject);
procedure SpeedButton39Click (Sender: TObject);
procedure SpeedButton34Click (Sender: TObject);
procedure SpeedButton33Click (Sender: TObject);
procedure SpeedButton29Click (Sender: TObject);
procedure SpeedButton18Click (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
MainForm: TMainForm;
a:real;
implementation
uses SplashUnit, AbuotUnit, MusikUnit, CloseUnit, InstalUnit;
{$R *.DFM}
// Загрузка главной странички с логотипом (первая загрузка)
procedure TMainForm. FormActivate (Sender: TObject);
begin
//WebBrowser1. Navigate (GetCurrentDir+
'\data\HTML\MainHTML.htm');
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\MainHTML.htm');
end;
// Бегущая строка в заголовке
procedure TMainForm. Timer1Timer (Sender: TObject);
var L:integer; c: Char; s:string;
begin
s:=MainForm. Caption;
c:=s[1];
L:=length(s);
Move (s[2], s[1], L-1);
s[L]:=c;
MainForm. Caption:=s;
end;
procedure TMainForm. Image1MouseMove (Sender: TObject;
Shift: TShiftState; X,
Y: Integer);
begin
Panel4. Color:=clInactiveBorder;
SpeedButton3. Font. Color:=clNavy;
SpeedButton2. Font. Color:=clNavy;
SpeedButton1. Font. Color:=clNavy;
SpeedButton4. Font. Color:=clNavy;
SpeedButton5. Font. Color:=clNavy;
end;
// Форма с музыкой
procedure TMainForm. SpeedButton1Click (Sender: TObject);
begin
if not Assigned(MusikForm) then
MusikForm:= TMusikForm. Create(Self);
MusikForm. ShowModal;
end;
// Скрытие глвной формы и загрузка прощальной формы
procedure TMainForm. SpeedButton2Click (Sender: TObject);
begin
MainForm. Visible:=false;
if not Assigned(CloseForm) then
CloseForm:= TCloseForm. Create(Self);
CloseForm.showmodal;
end;
procedure TMainForm. SpeedButton3Click (Sender: TObject);
Var
w1: Word;
p1, p2: array [0..100] of Char;
begin
StrPcopy (p1,'test');
IF GetModuleHandle(p1)=0 THEN
begin
StrPcopy (p2, ExtractFilePath (ParamStr(0))+'data\progi\test.exe');
w1:=WinExec (p2, SW_Restore);
end;
end;
procedure TMainForm. SpeedButton2MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton2. Font. Color:=clRed;
SpeedButton3. Font. Color:=clNavy;
SpeedButton1. Font. Color:=clNavy;
SpeedButton4. Font. Color:=clNavy;
SpeedButton5. Font. Color:=clNavy;
end;
// Загрузка формы о программе
procedure TMainForm. SpeedButton5Click (Sender: TObject);
begin
if not Assigned(AboutForm) then
AboutForm:= TAboutForm. Create(Self);
AboutForm. ShowModal;
end;
procedure TMainForm. FormCreate (Sender: TObject);
begin
end;
// заставка
procedure TMainForm. FormShow (Sender: TObject);
begin
SplashForm. ShowModal;
end;
// Скрытие(появление) управлющей панели
procedure TMainForm. Panel4Click (Sender: TObject);
begin
if Panel2. Height<>0 then
Panel2. Height:=0
else
Panel2. Height:=97;
end;
// эфект подсветки
procedure TMainForm. Panel4MouseMove (Sender: TObject; Shift:
TShiftState; X,
Y: Integer);
begin
Panel4. Color:=clred;
end;
procedure TMainForm. SpeedButton7Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\data_type.htm');
end;
procedure TMainForm. SpeedButton8Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\01.htm');
end;
procedure TMainForm. SpeedButton6Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\What_new.htm');
end;
procedure TMainForm. TabSheet1MouseMove (Sender:
TObject; Shift: TShiftState;
X, Y: Integer);
begin
Panel4. Color:=clInactiveBorder;
SpeedButton3. Font. Color:=clNavy;
SpeedButton2. Font. Color:=clNavy;
SpeedButton1. Font. Color:=clNavy;
SpeedButton4. Font. Color:=clNavy;
SpeedButton5. Font. Color:=clNavy;
end;
procedure TMainForm. SpeedButton13Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\palette_of_components.htm');
end;
procedure TMainForm. SpeedButton14Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\asked_types_of_data.htm');
end;
procedure TMainForm. SpeedButton21Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\string_type_of_data.htm');
end;
procedure TMainForm. SpeedButton20Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Struct_type.htm');
end;
procedure TMainForm. SpeedButton19Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\qualifying_types.htm');
end;
procedure TMainForm. SpeedButton15Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Procedure_types.htm');
end;
procedure TMainForm. SpeedButton22Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\workwithform.htm');
end;
procedure TMainForm. SpeedButton28Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\MakeSDI.htm');
end;
procedure TMainForm. SpeedButton26Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\MakeMDI.htm');
end;
procedure TMainForm. SpeedButton27Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Makekons.htm');
end;
procedure TMainForm. SpeedButton25Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\reget.htm');
end;
procedure TMainForm. SpeedButton24Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Optionproject.htm');
end;
procedure TMainForm. SpeedButton23Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Firsttechnol.htm');
end;
procedure TMainForm. SpeedButton30Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Dax.htm');
end;
procedure TMainForm. SpeedButton37Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\library_types.htm');
end;
procedure TMainForm. SpeedButton36Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\element_ActiveX.htm');
end;
procedure TMainForm. SpeedButton35Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\regestry_ActiveX.htm.');
end;
procedure TMainForm. SpeedButton32Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Make_ActiveForm.htm');
end;
procedure TMainForm. SpeedButton31Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\Activeform_in_Web.htm');
end;
procedure TMainForm. SpeedButton38Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\test.htm');
end;
procedure TMainForm. SpeedButton45Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\DebugerDelphi.htm');
end;
procedure TMainForm. SpeedButton44Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\PowerDebug.htm');
end;
procedure TMainForm. SpeedButton42Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\FindError.htm');
end;
procedure TMainForm. SpeedButton11Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Delphi\LES01.htm');
end;
procedure TMainForm. SpeedButton1MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton1. Font. Color:=clRed;
SpeedButton2. Font. Color:=clNavy;
SpeedButton3. Font. Color:=clNavy;
SpeedButton4. Font. Color:=clNavy;
SpeedButton5. Font. Color:=clNavy;
end;
procedure TMainForm. SpeedButton5MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton5. Font. Color:=clRed;
SpeedButton2. Font. Color:=clNavy;
SpeedButton1. Font. Color:=clNavy;
SpeedButton4. Font. Color:=clNavy;
SpeedButton3. Font. Color:=clNavy;
end;
procedure TMainForm. SpeedButton3MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton3. Font. Color:=clRed;
SpeedButton2. Font. Color:=clNavy;
SpeedButton1. Font. Color:=clNavy;
SpeedButton4. Font. Color:=clNavy;
SpeedButton5. Font. Color:=clNavy;
end;
procedure TMainForm. SpeedButton4Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\Halp.htm');
end;
procedure TMainForm. SpeedButton4MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton4. Font. Color:=clRed;
SpeedButton2. Font. Color:=clNavy;
SpeedButton1. Font. Color:=clNavy;
SpeedButton3. Font. Color:=clNavy;
SpeedButton5. Font. Color:=clNavy;
end;
procedure TMainForm. SpeedButton9Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\02.htm');
end;
procedure TMainForm. SpeedButton10Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\03.htm');
end;
procedure TMainForm. SpeedButton12Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\04.htm');
end;
procedure TMainForm. SpeedButton16Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\05.htm');
end;
procedure TMainForm. SpeedButton17Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\06.htm');
end;
procedure TMainForm. SpeedButton40Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\07.htm');
end;
procedure TMainForm. SpeedButton39Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\08.htm');
end;
procedure TMainForm. SpeedButton34Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\09.htm');
end;
procedure TMainForm. SpeedButton33Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\10.htm');
end;
procedure TMainForm. SpeedButton29Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\11.htm');
end;
procedure TMainForm. SpeedButton18Click (Sender: TObject);
begin
WebBrowser1. Navigate (ExtractFilePath(ParamStr(0))+
'data\HTML\practikum\12.htm');
end;
end.
Форма «Музыка»
В этой форме можно выбрать музыку, которая будет сопровождать вас во время изучения электронного учебника.
Рисунок 7 - Форма «МУЗЫКА»
Программный код формы «МУЗЫКА»
unit MusikUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs,
StdCtrls, MPlayer, Buttons, jpeg, ExtCtrls;
type
TMusikForm = class(TForm)
MediaPlayer1: TMediaPlayer;
ListBox1: TListBox;
SpeedButton1: TSpeedButton;
Image1: TImage;
SpeedButton2: TSpeedButton;
procedure ListBox1Click (Sender: TObject);
procedure SpeedButton1Click (Sender: TObject);
procedure SpeedButton2Click (Sender: TObject);
procedure SpeedButton2MouseMove (Sender: TObject; Shift:
TShiftState; X, Y: Integer);
procedure SpeedButton1MouseMove (Sender: TObject; Shift:
TShiftState; X, Y: Integer);
procedure Image1MouseMove (Sender: TObject; Shift: TShiftState;
X, Y: Integer);
procedure FormActivate (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
MusikForm:TMusikForm;
a:integer;
implementation
{$R *.DFM}
begin
MusikForm. Caption:='Состояние: Воспроизведение';
case ListBox1. ItemIndex of
0: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\1.mid';
1: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\2.mid';
2: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\3.mid';
3: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\4.mid';
4: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\5.mid';
5: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\6.mid';
6: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\7.mid';
7: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\8.mid';
8: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\9.mid';
9: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\10.mid';
10: ediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\11.mid';
11: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\12.mid';
12: MediaPlayer1. FileName:=ExtractFilePath (ParamStr(0))+
'data\mid\13.mid';
end;
MediaPlayer1. Open;
MediaPlayer1. Play;
a:=1;
end;
procedure TMusikForm. SpeedButton1Click (Sender: TObject);
begin
MusikForm. Caption:='Состояние: Остановлено';
if a=1 then
MediaPlayer1.stop;
MediaPlayer1.close;
end;
procedure TMusikForm. SpeedButton2Click (Sender: TObject);
begin
MusikForm. Caption:='Состояние: Выход';
Close;
end;
procedure TMusikForm. SpeedButton2MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton2.font.color:=clred;
SpeedButton1.font.color:=clMaroon;
end;
procedure TMusikForm. SpeedButton1MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton2.font.color:=clMaroon;
end;
procedure TMusikForm. Image1MouseMove (Sender: TObject; Shift:
TShiftState; X, Y: Integer);
begin
SpeedButton1.font.color:=clMaroon;
SpeedButton2.font.color:=clMaroon;
end;
procedure TMusikForm. FormActivate (Sender: TObject);
begin
MusikForm. Caption:='Музыкальное сопровождение';
Image1. Picture. LoadFromFile (ExtractFilePath(ParamStr(0))+
'data\img\Musik.jpg');
end;
end.
Форма «О ПРОГРАММЕ»
Рисунок 8 - о программе
Программный код формы «О ПРОГРАММЕ»
unit AbuotUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, Buttons, jpeg;
type
TAboutForm = class(TForm)
Memo1: TMemo;
Image1: TImage;
SpeedButton1: TSpeedButton;
Image2: TImage;
procedure SpeedButton1MouseMove (Sender:
TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image2MouseMove (Sender: TObject;
Shift: TShiftState; X,
Y: Integer);
procedure Memo1MouseMove (Sender:
TObject; Shift: TShiftState; X,
Y: Integer);
procedure FormActivate (Sender: TObject);
procedure SpeedButton1Click (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
AboutForm: TAboutForm;
implementation
procedure TAboutForm. SpeedButton1MouseMove (Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
SpeedButton1.font.color:=clred;
end;
procedure TAboutForm. Image2MouseMove (Sender:
TObject; Shift: TShiftState;
X, Y: Integer);
begin
SpeedButton1.font.color:=clMaroon;
end;
procedure TAboutForm. Memo1MouseMove (Sender: TObject; Shift:
TShiftState; X, Y: Integer);
Begin
SpeedButton1.font.color:=clMaroon;
end;
procedure TAboutForm. FormActivate (Sender: TObject);
begin
Image2. Picture. LoadFromFile (ExtractFilePath(ParamStr(0))+
'data\img\about.jpg');
end;
procedure TAboutForm. SpeedButton1Click (Sender: TObject);
begin
Close;
end;
end.
Форма «ТЕСТИРОВАНИЕ»
Рисунок 9 - тестирование
Программный код формы «ТЕСТИРОВАНИЕ»
unit test2_;
interface
uses
SysUtils, WinTypes, WinProcs, Messages,
Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ExtCtrls, jpeg;
type
TForm1 = class(TForm)
Label5: TLabel; // поле вывода вопроса
Image1: TImage; // область вывода иллюстрации
Panel1: TPanel;
Button1: TButton;
Image2: TImage; // кнопка «Ok», «Дальше», «Завершить»
procedure FormActivate (Sender: TObject);
procedure FormCreate (Sender: TObject);
procedure Button1Click (Sender: TObject);
procedure SelectorClick (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
const
N_ANSWERS=4; // четыре варианта ответов}
N_LEVEL=4; // четыре уровня оценки}
var
Form1: TForm1; // форма
answer: array [1..N_ANSWERS] of TLabel;
// альтернативные ответы
selector: array [1..N_ANSWERS+1] of TRadioButton;
// кнопки выбора ответа
f: TextFile;
fn:string; // имя файла вопросов
level:array [1..N_LEVEL] of integer;
{сумма, соответствующая уровню}
mes:array [1..N_LEVEL] of string;
{сообщение, соответствующее уровню}
score:array [1..N_ANSWERS] of integer; {очки за выбор ответа}
summa:integer; {набрано очков}
vopros:integer; {номер текущего вопроса}
n_otv:integer; {число вариантов ответа}
otv:integer; {номер выбранного ответа}
implementation
{установка формы в исходное состояние}
Procedure ResetForm (frm:TForm1);
var
i:integer;
begin
for i:=1 to N_ANSWERS do
begin
answer[i].width:=frm. ClientWidth-answer[i].left-5;
answer[i].Visible:=FALSE;
Selector[i].Visible:=FALSE;
end;
frm. Label5.width:=frm. ClientWidth-frm. Label5.left-5;
frm. Image1. Visible:=False;
end;
{определение достигнутого уровня}
procedure Itog (summa:integer; frm:TForm1);
var
i:integer;
buf:string;
begin
buf:='';
str (summa:5, buf);
buf:='Результаты тестирования'+chr(13)
+'Всего баллов: '+buf;
i:=1;
while (summa < level[i]) and (i<N_LEVEL) do
i:=i+1;
buf:=buf+chr(13)+mes[i];
frm. Label5.caption:=buf;
end;
procedure TForm1. FormCreate (Sender: TObject);
var
i: integer;
begin
// создадим пять меток для вывода вопроса и
альтернативных ответов
for i:=1 to N_ANSWERS do
begin
answer[i]:=TLabel. Create(self);
answer[i].Parent:=Form1;
answer[i].Left:=36;
answer[i].WordWrap:=True;
end;
// создадим радиокнопки для выбора ответа
for i:=1 to N_ANSWERS+1 do
begin
selector[i]:=TRadioButton. Create(self);
selector[i].Parent:=self;
selector[i].Caption:='';
selector[i].Width:=17;
selector[i].Left:=16;
selector[i].Visible:=False;
selector[i].Enabled:=True;
selector[i].OnClick:=SelectorClick;
end;
ResetForm(Form1);
end;
{вывод начальной информации о тесте}
procedure info (var f: TextFile; l:TLabel);
var
s, buf:string;
begin
buf:='';
repeat
readln (f, s);
if s[1] <> '.'
then buf:=buf+s+' ';
until s[1] ='.';
Form1. Label5.caption:=buf;
end;
{прочитать информацию об оценках за тест}
Procedure GetLevel (var f: TextFile);
var
i:integer;
buf:string;
begin {заполняем значения глобальных массивов}
i:=1;
repeat
readln (f, buf);
if buf[1] <> '.' then begin
mes[i]:=buf;
readln (f, level[i]);
i:=i+1;
end;
until buf[1]='.';
end;
// масштабирование иллюстрации
Procedure ScalePicture;
var
w, h:integer; // максимально допустимые размеры картинки
scaleX:real; // коэф. масштабирования по X
scaleY:real; // коэф. масштабирования по Y
scale:real; // общий коэф. масштабирования
i:integer;
begin
// вычислить максимально допустимые размеры картинки
w:=Form1. ClientWidth-Form1. Label5. Left;
h:=Form1. ClientHeight
- Form1. Panel1. Height -5
- Form1. Label5. Top
- Form1. Label5. Height - 5;
for i:=1 to N_ANSWERS do
if answer[i].Caption <> ''
then h:=h-answer[i].Height-5;
// здесь определена маскимально допустимая
величина иллюстрации
// определить масштаб
if w>Form1. Image1. Picture. Width
then scaleX:=1
else scaleX:=w/Form1. Image1. Picture. Width;
if h>Form1. Image1. Picture. Height
then scaleY:=1
else scaleY:=h/Form1. Image1. Picture. Height;
if ScaleY<ScaleX
then scale:=scaleY
else scale:=scaleX;
// здесь масштаб определен
Form1. Image1. Top:=Form1. Label5. Top+Form1. Label5. Height+5;
Form1. Image1. Left:=Form1. Label5. Left;
Form1. Image1. Width:=Round (Form1. Image1. Picture. Width*scale);
Form1. Image1. Height:=Round (Form1. Image1. Picture. Height*scale);
Form1. Label5. Visible:=TRUE;
end;
// вывод вопроса на экран
Procedure VoprosToScr (var f: TextFile; frm:TForm1;
var vopros:integer);
var
i:integer;
code:integer;
s, buf:string;
ifn:string; // файл иллюстрации
begin
vopros:=vopros+1;
str (vopros:3, s);
frm.caption:='Вопрос' + s;
{Выведем текст вопроса}
buf:='';
repeat
readln (f, s);
if (s[1] <> '.') and (s[1] <> '\')
then buf:=buf+s+' ';
until (s[1] ='.') or (s[1] ='\');
frm. Label5.caption:=buf;
if s[1] = '\'
then // к вопросу есть иллюстрация
begin
frm. Image1. Tag:=1;
ifn:=copy (s, 2, length(s));
try
frm. Image1. Picture. LoadFromFile(ifn);
except
on E:EFOpenError do
frm.tag:=0;
end {try}
end
else frm. Image1. Tag:=0;
// Читаем варианты ответов
for i:=1 to N_ANSWERS do
begin
answer[i].caption:='';
answer[i].Width:=frm. ClientWidth-Form1. Label5. Left-5;
end;
i:=1;
repeat
buf:='';
repeat // читаем текст варианта ответа
readln (f, s);
if (s[1]<>'.') and (s[1] <> ', ')
then buf:=buf+s+' ';
until (s[1]=', ') or (s[1]='.');
// прочитан альтернативный ответ
val (s[2], score[i], code);
answer[i].caption:=buf;
i:=i+1;
until s[1]='.';
// здесь прочитана иллюстрация и альтернативные ответы
if Form1. Image1. Tag =1 // есть иллюстрация к вопросу?
then begin
ScalePicture;
Form1. Image1. Visible:=TRUE;
end;
// вывод альтернативных ответов
i:=1;
while (answer[i].caption <> «) and (i <= N_ANSWERS) do
begin
if i = 1
then
if frm. Image1. Tag =1
then answer[1].top:=frm. Image1. Top+frm. Image1. Height+5
else answer[i].top:=frm. Label5. Top+frm. Label5. Height+5
else
answer[i].top:=answer [i-1].top+ answer [i-1].height+5;
selector[i].top:=answer[i].top;
selector[i].visible:=TRUE;
answer[i].visible:=TRUE;
i:=i+1;
end;
end;
{$R *.DFM}
procedure TForm1. FormActivate (Sender: TObject);
begin
fn:='Delphi.txt';
assignfile (f, fn);
{$I-}
reset(f);
{I+}
if IOResult=0 then
begin
Info (f, Label5);
GetLevel(f);
end;
// end;
end;
procedure TForm1. Button1Click (Sender: TObject);
begin
case Button1.tag of
0: begin
Button1.caption:='Дальше';
Button1.tag:=1;
Selector [N_ANSWERS+1].Checked:=TRUE;
{вывод первого вопроса}
Button1. Enabled:=False;
ResetForm(Form1);
VoprosToScr (f, Form1, vopros)
end;
1: begin {вывод остальных вопросов}
summa:=summa+score[otv];
Selector [N_ANSWERS+1].Checked:=TRUE;
Button1. Enabled:=False;
ResetForm(Form1);
if not eof(f)
then VoprosToScr (f, Form1, vopros)
else
begin
summa:=summa+score[otv];
closefile(f);
Button1.caption:='Ok';
Form1.caption:='Результат';
Button1.tag:=2;
Button1. Enabled:=TRUE;
Itog (summa, Form1);
end;
end;
2: begin {завершение работы}
Form1. Close;
end;
end; {case}
end;
procedure TForm1. SelectorClick (Sender: TObject);
var
i:integer;
begin
i:=1;
while selector[i].Checked = FALSE do
i:=i+1;
otv:=i;
Button1.enabled:=TRUE;
end;
end.
Текст программного кода теста.
Сейчас Вам будут предложены вопросы по Delphi. Вы должны из предложенных нескольких вариантов ответов выбрать правильный.
Вы прекрасно разбираетесь в Delphi!
20
Вы много знаете о Delphi, но на некоторые вопросы ответили не верно.
14
Вы, вероятно, только начали знакомиться с Delphi?
10
Вы плохо знаете Delphi!
6
.
В каком окне расположена Палитра КОМПОНЕНТ:
\1.bmp
Окно Инспектора объектов
0
Окно Конструктора формы
0
Главное окно
1
Что содержит Палитра КОМПОНЕНТ:
\2.bmp
Команды.
0
Множество компонент.
1
Свойства компонент
0
Какое количество закладок содержит Палитра компонент:
\3.bmp
25
0
Зависит от настроек
1
8
0
Как часто называют окно конструктора формы?:
\4.bmp
Редактор кода
0
Инспектор объектов
0
Форма
1
Сколько закладок имеет окно Инспектора объектов:
\5.bmp
2
1
1
0
3
0
Что отображает закладка «Properties» Инспектора объектов:
\6.bmp
Свойства компонент.
1
События.
0
Объекты.
0
Для чего предназначен селектор объектов:
\7.bmp
Для удаления объекта
0
Для добавления объекта
0
Для выбора объекта
1
С помощью, какой команды создается прект нового приложения с пустой формой?:
\8.bmp
File/Open
0
File/Use Unit
0
File/New Application
1
Какое действие выполняет команда Edit/Undo?:
\9.bmp
Вставляет текст из буфера
0
Удаляет выделенный фрагмент
0
Отменяет последние действие
1
Для чего используется компанент Label:
\10.bmp
Вывод графики
0
Отображение текста
1
Ввод текста
0
Какое свойство соответствует тексту отображаемому компонентой Edit:
\11.bmp
Caption
0
Text
1
Hint
0
Форма «ВЫХОД»
Рисунок 10 - Выход
Программный код фомы «ВЫХОД»
unit CloseUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs,
jpeg, ExtCtrls, StdCtrls;
type
TCloseForm = class(TForm)
Label1: TLabel;
Label2: TLabel;
procedure FormClick (Sender: TObject);
procedure Image1Click (Sender: TObject);
procedure FormKeyDown (Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Label1Click (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
CloseForm: TCloseForm;
implementation
uses MainUnit;
{$R *.DFM}
procedure TCloseForm. FormClick (Sender: TObject);
begin
CloseForm. Close;
MainForm. Close;
end;
procedure TCloseForm. Image1Click (Sender: TObject);
begin
CloseForm. Close;
MainForm. Close;
end;
procedure TCloseForm. FormKeyDown (Sender:
TObject; var Key: Word;
Shift: TShiftState);
begin
CloseForm. Close;
MainForm. Close;
end;
procedure TCloseForm. Label1Click (Sender: TObject);
begin
CloseForm. Close;
MainForm. Close;
end;
end.
6. Экономическая часть: расчет себестоимости работ по разработке электронного учебника
Затраты на создание электронного учебника:
Расчет заработной платы:
Заработная плата разработчика с отчислениями:
ЗП раз = 260*5,00* 1,385 (1)
где - 260 - трудоемкость разработки (в часах) табл. 1.
- 5,00 руб. - средняя часовая оплата
(оплата в месяц = 880 рублей, рабочих дней в месяце = 22, таким образом, оплата в день составит 800: 22=40 рублей, оплата в час составит 40:8=5,00 рублей)
- 1,385% - коэффициент, действующий в существующей системе налогообложения.
ЗП раз = 1800,50 руб. (2)
Таблица 1 - Подсчет трудоемкости разработки
Наименование этапа |
Трудоемкость (час.) |
|
1. Постановка целей и задач разработки электронного учебника |
4 |
|
2. Поиск и приобретение необходимой литературы |
8 |
|
3. Разработка плана составления электронного учебника |
8 |
|
4. Разработка электронного учебника: - подготовка материала в рукописном виде |
107 |
|
5. Редактирование материала |
8 |
|
6. Набор материала на компьютере |
120 |
|
7. Запись электронного учебника на СD |
1 |
|
8. Оформление необходимой документации |
4 |
|
Итого: |
260 |
Расчет машинного времени при создании методического пособия:
Затраты определяются следующими пунктами:
1. стоимость 1 кВт/ч электроэнергии - 0,53 руб.;
2. балансовая стоимость ПЭВМ - 25000,00 руб.;
3. амортизационные отчисления - 12,5%;
4. планируемое время работы над методическим пособием 136 часов;
5. количество часов работы компьютера за год 1500 часов;
6. потребляемая мощность:
- системного блока - 150 Вт;
- монитора - 50 Вт;
- принтера - 30 Вт.
Стоимость одного машинного времени на этапе разработки методического пособия определяется из:
1. Стоимости одного часа электроэнергии:
Ст. 1 час/руб. = Рпотр*0,53 (3)
где - Ст. 1 час/руб. - стоимость 1 часа потребления электроэнергии на стадии разработки;
- Рпотр - сумма потребляемой электрической мощности системного блока, монитора, принтера (кВт);
- 0,53 - стоимость 1 кВт/час электрической энергии (руб.).
Ст1 час/руб. = (1,5+0,5+0,3)*0,53 = 1,22 руб./час (4)
2. Величины годовых амортизационных отчислений:
Саморт.отчисл. = (Ст.компьют.*12,5%)/1500
где - Саморт.отчисл. - величина амортизационных отчислений за час работы компьютера (руб.);
- 12,5% - ежегодный процент амортизационных отчислений;
- 1500 - приблизительное количество часов работы компьютера за год.
Саморт.отчисл. = 2,08 руб. (5)
3. Затраты на обслуживание:
Зобсл. = 136*(3 поб.перс./176)*2*1,385 (6)
где - Зобсл./час - затраты на обслуживание персонального компьютера, монитора и принтера во время разработки методического пособия в час;
- Зобсл. - затраты на обслуживание персонального компьютера, монитора и принтера во время разработки методического пособия за весь срок (136 часов) изготовления методического пособия;
- Зпоб.перс. - заработная плата обслуживающего персонала (200 руб.);
-176 - количество рабочих часов в месяц;
- 2 - количество часов работы с разработчиком;
-1,385% - коэффициент, действующий в существующей системе налогообложения.
Зобсл./час = (200/176)*2* 1,385 = 3,15 руб./час (7)
Зобсл. = 136* Зобсл./час = 428,40 руб. (8)
4. Рассчитаем стоимость 1 часа машинного времени на стадии разработки:
Ст1час.маш. времени = Ст. 1 час/руб. + Саморт.отчисл. + Зобсл./час
где - Ст1час.маш. времени - стоимость 1 часа машинного времени во время разработки методического пособия;
- Ст. 1 час/руб. - стоимость 1 часа потребления электроэнергии на стадии разработки;
- Саморт.отчисл. - величина амортизационных отчислений за час работы компьютера;
- Зобсл. - затраты на обслуживание персонального компьютера, монитора и принтера во время этапа разработки пособия.
Ст1час.маш. времени = 1,22+2,08+3,15 = 6,45 руб. (9)
Стоимость расходных материалов (Рвсп.мат.)
Таблица 2 - Расходные материалы и их стоимость
Перечень расходных материалов |
Сумма затрат, руб. |
|
Дискеты (10 шт.) |
100 |
|
Компакт диск |
27 |
|
Бумага для принтера (1 пачка) |
90 |
|
Картридж для принтера (1 шт.) |
800 |
|
Итого: |
1017 |
Таким образом стоимость разработки электронного учебника будет складываться из трудоемкости затрат на заработную плату разработчика, из стоимости машино-часа, с учетом времени, затраченного на разработку методического пособия, и стоимости материалов.
Ст.м.п. = ЗПраз.+Ст. 1 час.маш. времени*Т+Рвсп.мат. (10)
где - ЗПраз. - заработная плата разработчика (руб.);
- СтЛчас.маш. времени - стоимость 1 часа машинного времени во время разработки методического пособия (руб.);
- Т - время работы компьютера на стадии разработки методического пособия (час.);
- Рвсп.мат. - стоимость расходных материалов (руб.).
Себестоимость разработки методического пособия:
Себест.разр. м.п. =2354,50 + 6,45*136+1017 = 4248,70 руб. (11)
7. Описание технических средств необходимых для выполнения проекта
Delphi 5 может работать в среде операционных систем от Windows 95 до Windows 2000. Особых требований к компьютеру система не предъявляет, за исключением того, что процессор должен быть типа Pentium, оперативной памяти - не менее 32 Мбайт и достаточное количество свободной дисковой памяти (порядка 200 Мбайт).
Электронный учебник может работать в среде операционных систем от Windows 95 до Windows 2000. Процессор типа Pentium, оперативной памяти - не менее 16 Мбайт.
Список источников
1 Р. Баас, М. Фервай, Х. Гюнтер Delphi 5 для пользователя: пер. с нем. - К.: Издательская группа BHV, 2000. - 496 с.: ил.
2 Культин Н.Б. Программирование на Object Pascal в Delphi 5. - СПб.: БХВ - Санкт-Петербург, 2000. - 464 с.: ил.
3 Дарахвелидзе П.Г., Марков Е.П., Котенок О.А. Программирование в Delphi 5. - СПб.: БХВ - Санкт-Петербург, 2000. - 784 с.: ил.
4 Браун М. HTML 3.2. - СПб.: БХВ - Санкт-Петербург, 1999. - 470 с.: ил.
5 Гофман В. Delphi 5. - СПб.: БХВ - Санкт-Петербург, 2000. - 584 с.: ил.
6 Вебер Дж. Технология Java. - СПб.: БХВ - Санкт-Петербург, 1999
7 Матросов Е. HTML 4.0. - СПб.: БХВ - Санкт-Петербург, 2000. - 576 с.: ил.
8 Пономаренко С. Adobe Photoshop 5.0 - СПб.: BHV - Санкт-Петербург, 2000. - 656 с.: ил.
9 Тихомиров К. Microsoft SQL Server 7.0 - СПб.: BHV - Санкт-Петербург, 2000. - 524 с.: ил.
10 Хомоненко А. Самоучитель по Delphi 5. - СПб.: БХВ - Санкт-Петербург, 1999. - 496 с.: ил.
11 Архангельский А.Я. Разработка прикладных программ для Windows в Delphi 5 - М.: ЗАО «Издательство БИНОМ», 1999. - 256 с.: ил. (Все о Delphi)
12 Дарахвелидзе П., Марков Е. Delphi 4. - СПб.: БХВ - Санкт-Петербург, 1999. - 486 с.: ил.
13 СанПин 542-96 Гигиенические требования к видеодисплейным терминалам, персональным электронно-вычислительным машинам и организации работ - М.: Просвещение, 2000. - 389 с.
Подобные документы
Предмет объектно-ориентированного программирования и особенности его применения в средах Паскаль, Ада, С++ и Delphi. Интегрированная среда разработки Delphi: общее описание и назначение основных команд меню. Процедуры и функции программы Delphi.
курсовая работа [40,8 K], добавлен 15.07.2009Внедрение информационных технологий в систему образования. Понятие, отличительные признаки, виды, структура и предназначение электронного учебника. Принципы его создания и основные этапы разработки в интегрированной среде программирования Delphi.
дипломная работа [2,3 M], добавлен 03.07.2015Delphi - среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык Delphi. Варианты программного пакета. Особенности работы, вид экрана после запуска. Описание структуры программы.
курсовая работа [1,3 M], добавлен 25.11.2014Создание электронного учебника "Энциклопедия Интернет" для ознакомления пользователя с его функциями. Подготовка к разработке программного продукта. Анализ предметной области. Выбор языка программирования. Работа в интегрированной среде Delphi 7.
курсовая работа [1,2 M], добавлен 09.03.2012Особенности среды визуального проектирования Borland Delphi 7.0. Этапы разработки программы и составления блок-схемы алгоритмов. Способы вычисления кусочно-заданной функции одной переменной. Рассмотрение компонентов среды Delphi, ее предназначение.
контрольная работа [703,8 K], добавлен 24.09.2012Основные приемы работы в среде программирования Delphi. Особенности технологии создания простейших приложений. Работа с компонентами среды разработки приложений. Ввод, редактирование, выбор и вывод информации. Аспекты использования структуры ветвления.
методичка [619,9 K], добавлен 17.11.2011Средства языка программирования Delphi. Структурные типы данных. Строковые переменные, массивы, множества, файлы. Механизм классов в C++. Интерфейсный и описательный обзоры классов в Delphi. Работа с текстовыми и бинарными файлами прямого доступа.
курсовая работа [990,4 K], добавлен 07.08.2012Интегрированная среда разработки Delphi и элементы, входящие в ее состав. Математическая модель, алгоритм решения и его свойства. Описание операторов, процедур, функций и методов. Создание приложений по аналитической геометрии и теоретической механике.
курсовая работа [1,8 M], добавлен 26.05.2010Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.
контрольная работа [3,6 M], добавлен 18.10.2012Изучение учебника и справочной подсистемы Windows 95/NT, получение навыков работы с "мышью", манипулирование окнами и значками программ и документов, запуска программ в системе Windows 95/NT. Разработка простого приложения для Windows при помощи Delphi.
контрольная работа [1,1 M], добавлен 15.01.2009