Электронный учебник «Программа Erwin»
Инсталляция программы, инсталляция с дистрибутива, происходит в каталог C: Program FilesЭУК Erwin. Путь можно изменить в процессе инсталяции. Исполняемым файлом программы является файл ychebbnik.exe. При инсталляции программы создается программная группа «ychebbnik.exe» в меню «Пуск». Erwin позволяет проводить описание, анализ и моделирование модели данных — построитель мета-моделей данных… Читать ещё >
Электронный учебник «Программа Erwin» (реферат, курсовая, диплом, контрольная)
В современных условиях создание сложных программных приложений невозможно без использования систем автоматизированного конструирования ПО (CASE-систем). CASE-системы существенно сокращают сроки и затраты разработки, оказывая помощь инженеру в проведении рутинных операций, облегчая его работу на самых разных этапах жизненного цикла разработки.
Программный продукт EкWin Data Modeler (ранее называвшийся AllFusion Process Modeler) — средство реализации CASE-технологий.
Erwin позволяет проводить описание, анализ и моделирование модели данных — построитель мета-моделей данных. Занимает одно из лидирующих мест в своём сегменте рынка. В настоящее время выпускается компанией Computer Associates. Распространяется на коммерческой основе.
Erwin включает три стандартные методологии: IDEF0 (функциональное моделирование), DFD (моделирование потоков данных) и IDEF3 (моделирование потоков работ). Эти методологии по-своему уникальны. Каждая из них может быть выполнена отдельно с помощью BPwin, но их совокупность заключённая в модель даёт аналитику полную картину предметной области клиента.
Впервые программа BPwin была разработана компанией Logic Works.
Название сложилось из сокращения BP — (business process) — и суффикса win, отражавшего ориентацию на графические операционные системы.
В 1998 году компания Logic Works была поглощена фирмой Platinum Technology. Та в свою очередь, всего через год, в 1999 году была куплена Computer Associates.
Значительного успеха на рынке достигла версия программы BPwin 4.0, которая была выпущена на рубеже XX и XXI веков.
Последняя версия программного обеспечения получила название CA ERwin Process Modeler 7.3 и вошла в объединённый пакет CA ERwin Modeling Suite.
В России от версии к версии издаются книги по работе с программой и CASE-технологиям. Примером могут стать книги Фараонова[1], Культина[2] и Маклакова[3].
Основным недостатком является отсутствие развития функционала, позволяющего переносить спроектированные процессы в среду исполнения.
1. Постановка задачи
Задача курсового проекта — должна включать разработать электронный учебник «Программа Erwin», позволяющий получить теоретические навыки, освоить программу на примерах и пройти тестирование.
Электронный учебник состоит из следующих разделов:
— теоретическая часть: включает в себя материал, необходимый для освоения программы Erwin;
— практическая часть: включающая пять лабораторных работ;
— эмуляция, которая позволяет на наглядных примерах изучить возможности программы. Эмуляция включает два примера работы.
К программе нужно оформить пояснительную записку, включающую в себя описание программы, обоснование данной темы, а так же разделы теория и практика, содержащие HTML документы и раздел эмуляция.
Требования к программе:
— в программе необходимо использовать дополнительные компоненты из библиотеки скинов Alphaskins (sbutton, slable, sTreeView, и другие);
— для эффекта открытия предусмотреть необычное появление основных форм;
— для улучшения чтения информации предусмотреть размещение компонента Webbrowser с отображением HTML — файлов;
— выполнить имитацию работы в программе Erwin.
В качестве основного языка программирования использовать Delphi. Для представления теоретического и практического материала использовалась программа из пакета MS Office — FrontPage2007.
2. Вычислительная система
2.1 Программные средства
программа интерфейс вычислительный пользователь
Заданием по курсовому проекту было разработать программу на языке программирования Delphi. Программа рассматривалась в рамках изучения курса «Технология разработки программного продукта».
Программу можно реализовать с использованием различных программных средств, например c помощью языка HTML можно создавать и обрабатывать формы, управлять шрифтами, отображать информацию в виде таблиц. HTML является языком браузера. HTML — это язык, предназначенный для представления информации в Internet.
Для реализации тестирования существуют свои компоненты. Основное достоинство создания учебника в html — это отсутствие необходимости подгона размеров страниц под разрешение экрана. Минусом является небольшой выбор компонентов;
В программе будут использоваться следующие основные компоненты: sButton, sRadioGroup, sEdit, image, sTreeView, Timer, WebBrowser, sPanel, sSpeedButton, sMemo, MainMenu.
Для лучшего оформления интерфейса использовалась библиотека скинов Alphaskins.
2.2 Технические средства
Для тестирования можно использовать две формы построения, это:
— открытая форма, когда по условию задания пользователь должен дать произвольный ответ на вопрос;
— закрытая форма, когда пользователю предлагается на выбор несколько вариантов ответов.
Отличие этих форм заключается в использование различных компонентов в среде Delphi. Выбор типа и вида тестового задания определяется, прежде всего, целями, в соответствии с которыми проводится тестирование, характером материала, усвоение которого необходимо выявить, возрастными особенностями испытуемых. Немаловажное значение играет ресурсное обеспечение, а также запас времени, которым располагает разработчик.
Виды тестирования:
— множественный выбор — пользователю необходимо выбрать один или несколько правильных ответов из приведенного списка;
— альтернативный выбор — пользователь должен ответить «да» или «нет»;
— установление соответствия — пользователю предлагается установить соответствие элементов двух списков;
— выбор картинок — пользователь должен выбрать одну из нескольких изображений;
— свободное изложение — пользователь должен самостоятельно сформулировать ответ;
— дополнение — пользователь должен сформулировать ответы с учетом предусмотренных в задании ограничений.
В курсовом проекте используется стандартное тестирование. В нем пользователю предлагается выбрать один из трех ответов.
При окончании прохождения теста пользователю выводиться оценка, а так же количество правильных ответов из возможных. При выборе правильного ответа в sRadioGroup переменная целого типа увеличивается на единицу. При нажатия на кнопку «далее» происходит смена вопроса и значения в sRadioGroup. Тестирование реализуется с помощью оператора условного перехода IF и оператора выбора case.
Минимальные системные требования подобраны для Windows XP. Для нормальной работы программы на жёстком диске необходимо 150 МБ свободного пространства. Для программного продукта необходимо 128 МБ ОЗУ, потому что в программе содержится большое количество графических изображений и текстовых документов. Поскольку в программе присутствуют графические файлы, то необходима видеокарта с размером ОЗУ 32 МБ
2.3 Аппаратно-программный комплекс
Минимальные системные требования:
— IntelPentiumIV33 МГц и выше;
— Microsoft Windows 98, 2000, XP, Windows Vista, Windows 7;
— 64 МБ ОЗУ (рекомендуется 128 МБ);
— 150 МБ места на жестком диске;
— монитор;
— мышь, клавиатура.
3. Алгоритм задачи
3.1 Вызов и загрузка
Инсталляция программы, инсталляция с дистрибутива, происходит в каталог C: Program FilesЭУК Erwin. Путь можно изменить в процессе инсталяции. Исполняемым файлом программы является файл ychebbnik.exe. При инсталляции программы создается программная группа «ychebbnik.exe» в меню «Пуск».
Шаги установки программы:
1) Запустить установочный файл (Setup.exe).Запускается окно мастера установки программы (Рисунок 1);
Рисунок 1 — Окно «МАСТЕР УСТАНОВКИ ПРОГРАММЫ»
2) Далее будет предложено прочитать информацию (Рисунок 2)
Рисунок 2 — Окно «ИНФОРМАЦИЯ»
3) В строке «КАТАЛОГ УСТАНОВКИ» указать путь установки программы (Рисунок 3)
Рисунок 3 — Окно «КАТАЛОГ УСТАНОВКИ»
4) Подтверждение установки (Рисунок 4)
Рисунок 4-Окно «ПОДТВЕРЖДЕНИЕ УСТАНОВКИ»
5) Далее появится обычное окно установки (Рисунок 5)
Рисунок 5 — Окно установки
6) Окно завершения установки (Рисунок 6)
Рисунок 6-Окно завершение установки
Установочный файл разработан с помощью программы Small Install Maker версии 5.02.
3.2 Интерфейс пользователя
Основные требования к организации интерфейса:
- Простота. Пользователь должен быстро понимать работу программы. Большое количество графики и элементов, требующих больших объемов машинной памяти, может привести к «зависанию» компьютеров пользователей.
- Гибкость. Программа должна иметь не менее одного перехода на другие формы.
- Стандартизация. Все модули должны выглядеть и восприниматься одинаково. После просмотра нескольких окон обучаемые должны осуществлять навигацию инстинктивно, не думая, на что нужно нажать, чтобы перейти к следующей странице.
Меню программы представляет собой главную форму со структурой:
- ТЕОРИЯ;
- ЭМУЛЯЦИЯ;
- ПРАКТИКА;
При выборе пункта главного меню закрывается основная форма и запускается форма согласно выбранному действию.
При выборе пункта «Теория» становится активной форма, на которой расположены TreeView, Webbrowser. Пункты TreeView Содержат ссылки на Html-документы, находящиеся в папке stranici и открывающиеся в WebBrowser.
При выборе пункта «Эмуляция» открывается форма с изображениями, которые показывают работу в программе Erwin.
3.3 Система помощи
Система помощи организованна в виде формы, содержащая краткую информацию о программе, разработчике. Также система помощи имеется в виде всплывающих подсказок и дополнительных подсказок в разделе эмуляция.
Загрузка справки начинается с главной формы. Всплывающие подсказки доступны как на главной форме, так и в других разделах.
3.4 Логическая структура
Разрабатываемая программа позволяет постоянно контролировать действия пользователя.
При запуске программы активируется форма заставки. При выборе действия (продолжить работу с программой? Да / Нет), открывается форма регистрации где пользователю предлагается войти под уже существующим именем или зарегистрироваться. после запускается главная форма, на которой присутствуют пункты:
— ТЕОРИЯ;
— ЭМУЛЯЦИЯ;
— ПРАКТИКА;
Так же организовано верхнее меню состоящая из трех подпунктов:
— ФАЙЛ;
— СПРАВКА;
— ВЫХОД.
При выборе пункта главного меню закрывается основная форма и происходит запуск формы, соответствующей выбранному действию.
При выборе пункта Теория становится активной форма, на которой расположены TreeView, Webbrowser. Пункты TreeView Содержат ссылки на Html-документы, находящиеся в папке теория и открывающиеся в WebBrowser.
При выборе пункта ЭМУЛЯЦИЯ открывается форма с изображениями, которые показывают работу в программе Erwin.
При выборе пункта ПРАКТИКА появляется новая форма и становится активным компонент TreeView, в котором содержатся ссылки на практические работы, переходы к эмуляциям, а также тестирование.
Пункт верхнего меню ФАЙЛ позволяет переходить на те же формы, что и пункты основного меню главной формы.
Пункт верхнего меню справка вызывает две дополнительные формы:
— О ПРОГРАММЕ. Содержит краткую информацию о разработанной программе;
— О РАЗРАБОТЧИКЕ. Предоставляет информацию о создателе программы.
Пункт верхнего меню ВЫХОД закрывает программу.
3.5 Физическая структура
Программа состоит из пятнадцати модулей (Таблица 1):
Таблица 1 — Модули программы
Наименование модуля | Функциональное назначение | |
Zastavka.pas | Заставка программа | |
registr.pas | Регистрация пользователя | |
Glavnaya.pas | Главная форма программы | |
Teoria.pas | Форма «Теория» | |
Practika.pas | Форма «Практика» | |
test.pas | Форма «Тестирование» | |
Test1.pas | Форма «Тестирование» | |
Test2.pas | Форма «Тестирование» | |
Test3.pas | Форма «Тестирование» | |
Test4.pas | Форма «Тестирование» | |
Imyl.pas | Форма «Эмуляция» | |
Imyl1.pas | Форма «Эмуляция» | |
Imyl2.pas | Форма «Эмуляция» | |
O_program.pas | Форма «О программе» | |
Spravka.pas | Форма «О разработчике» | |
4. Описание программы
После запуска exe-файла на экране появляется заставка программы (Рисунок 1), которая по выбору действия либо сменяется формой регистрации (Рисунок 2), либо программа завершается. После регистрации открывается главная форма (Рисунок 3). На главной форме расположены три кнопки переходов, а так же верхнее меню.
Рисунок 1 — Форма заставки
Рисунок 2 — форма регистрации
Рисунок 3 — главная форма
Раздел Теория представляет собой компонент TreeView, содержащий ссылки на html-файл, открывающийся в WebBrowser (Рисунок 4).
Рисунок 4 — Форма ТЕОРИЯ
Раздел Практика представляет собой компонент TreeView, с помощью которого можно открыть в WebBrowser практические задания (Рисунок 5), перейти к тестированию или же к эмуляции.
Рисунок 5 — Форма ПРАКТИКА
Раздел Эмуляция (Рисунок 6) включает в себя 11 картинок с компонентами Delphi, которые позволяют создать имитацию работы программы Erwin.
Подраздел Тестирование вызывается из раздела практика, содержит в себе пять тестов по программе Erwin. Каждый тест включает в себя пять вопросов. (Рисунок 7).
Рисунок 6 — Форма Эмуляция
Рисунок 7 — форма Тестирование (ответ на вопрос)
5. Применение программы
Разработанная программа не требует установки на компьютер. Программу можно запустить с СD-диска, либо скопировать папку «Электронный учебник «Erwin».
Запустить программу можно файлом ychebbnik.exe.
На все формы программы, кроме справочной информации можно попасть с любой формы при помощи верхнего меню.
На формы О ПРОГРАММЕ (Рисунок 8) и СПРАВКА (Рисунок 9) можно попасть только из главного меню.
Рисунок 8 — Форма О ПРОГРАММЕ
Рисунок 9 — Форма АВТОРСТВО
6. Тестирование и отладка
При разработке программы было выявлено и исправлено большое количество ошибок. В основном ошибки были в подгонке программы под разрешение экрана. Так же были синтаксические ошибки и ошибки при подсчете результата тестирования.
На тестирование и отладку ушло 40% времени от общего времени разработки программного продукта.
Основные ошибки при тестирование программы представлены в Таблице 2
Таблица 2 — Основные ошибки
Ошибка | Исправление | |
Неправильно отображалась последовательность шагов в эмуляции | Были исправлены последовательности открытия и скрытия панелей с изображениями | |
Не отображались html-файлы в Webbrouser | Исправлен путь к html-файлу | |
Неправильно отображались действия компонентов TreeView | была исправлена ошибка в указании индекса строки компонента TreeView | |
Заключение
В ходе курсового проекта был разработан Электронный учебник «Программа Erwin»
В процессе создания программы использовались приложения:
— Erwin 4, Erwin 7;
— Microsoft Office FrontPage 2007;
— Microsoft Office Word 2007;
Разработанная программа обладает следующими свойствами:
— предоставляет теоретический материал по программе Erwin в виде текстовой информации;
— содержит практические работы;
— позволяет проверить свои знания в виде тестирования;
— наглядно демонстрирует работы программы Erwin.
Выполнены требования, поставленные перед разработкой:
— в программе определен способ необычного появления формы на экран (эффект появления);
— в программе использовалось большое количество различных компонентов;
— реализовано подключение HTML файлов;
— имитация работы в программе Erwin реализована в разделе Эмуляция.
1. Фаронов В. В. «Программирование баз данных в Delphi 6». — СПб., 2003. — 520 с.
2. Культин Н. Б. «Основы программирования в Delphi 7». — СПб.: БХВ-Петербург, 2004. — 597 с.
3. С. В. Маклаков «BPwin и ERwin. CASE — средства разработки информационных систем» Диалог-МИФИ 2000 г. — 256 стр.
Приложение А
(обязательное) Текст программы
var
zastavka: Tzastavka;
x:integer;
implementation
uses ychebnik, Unit5;
{$R *.dfm}
procedure Tzastavka. sButton2Click (Sender: TObject);\Закрытие программы
begin
close;
end;
procedure Tzastavka. sButton1Click (Sender: TObject);\Переход к регистрации
begin
zastavka. Hide;
registr. Show;
end;
var
registr: Tregistr;
s, v: string; f: text;
INI: TIniFile;
nick:string;
implementation
uses Unit6, ychebnik;
{$R *.dfm}
procedure Tregistr. sButton1Click (Sender: TObject);\проверка имени и пароля при входе
var pass: string;
begin
if (sedit1. Text='') or (sedit2. Text='') then begin
showmessage ('Введите нормальные данные'); exit; end;
{reg:=sedit1. Text;
s:=sedit1. Text;
assign (f, 'registr.txt');
reset (f);
while not eof (f) do begin}
nick:=ini. ReadString (sedit1. Text, 'login', 'error123');
if nick='error123' then begin
showmessage ('Ошибка входа!'); exit; end
else
pass:=ini. ReadString (sedit1. Text, 'pass', 'error123');
if pass<>sedit2. Text then begin
showmessage ('Ошибка входа!'); exit; end
else
reg:=sedit1. Text;
registr. Hide;
glavnaya.show;
glavnaya. Timer2. Enabled:=true;
end;
procedure Tregistr. sButton3Click (Sender: TObject);\выход из программы
begin
if messagedlg ('Вы действительно хотите выйти?', mtConfirmation, mbOKCancel, 0)=1 then begin
close; registr. Close; glavnaya. Close;
end
else
exit;
end;
procedure Tregistr. sButton2Click (Sender: TObject);\регистрация нового пользователя
begin
if (sedit1. Text='') or (sedit2. Text='') then begin
showmessage ('Некорректный ввод!'); exit; end;
nick:=sedit1.text;
ini.writestring (nick, 'login', nick);
ini.writestring (nick, 'pass', sedit2. Text);
showmessage ('Вы зарегестрированны');
end;
procedure Tregistr. FormCreate (Sender: TObject);
begin
INI:=Tinifile. Create (getcurrentdir+'users.ini');
end;
var
glavnaya: Tglavnaya;
X, jg: integer;
implementation
uses practic, Unit3, Unit4, Unit5, Unit6, Unit15, Unit14;
{$R *.dfm}
procedure Tglavnaya. N7Click (Sender: TObject);\выход из программы
begin
if messagedlg ('Вы действительно хотите выйти?', mtConfirmation, mbOKCancel, 0)=1 then
close
else
exit;
end;
procedure Tglavnaya. sButton2Click (Sender: TObject);\вход в разделы теория, эмуляция, практика
begin
if image3. Visible=false then begin
image3. Visible:=true;
image4. Visible:=false;
image2. Visible:=false;
jg:=2;
end;
end;
procedure Tglavnaya. sButton4Click (Sender: TObject);\ переход к теории
begin
if image2. Visible=true then begin
timer3. Enabled:=true
end;
if image3. Visible=true then begin
timer1. Enabled:=true
end;
if image4. Visible=true then begin
timer4. Enabled:=true;
end;
end;
procedure Tglavnaya. sButton1Click (Sender: TObject); \ показ картинки теория
begin
if image2. Visible=false then begin
image2. Visible:=true;
image3. Visible:=false;
image4. Visible:=false;
jg:=1;
end;
end;
procedure Tglavnaya. sButton3Click (Sender: TObject); \ переход к эмуляции
begin
if image4. Visible=false then begin
image4. Visible:=true;
image3. Visible:=false;
image2. Visible:=false;
jg:=3;
end;
end;
procedure Tglavnaya. FormCreate (Sender: TObject);
begin
image4. Visible:=false;
image2. Visible:=false;
image3. Visible:=false;
jg:=0;
end;
procedure Tglavnaya. sButton1MouseMove (Sender: TObject; Shift: TShiftState; X, \ увеличение текста кнопки
Y: Integer);
begin
sbutton1.font. Size:=14;
end;
procedure Tglavnaya. sButton2MouseMove (Sender: TObject; Shift: TShiftState; X, \ увеличение текста кнопки
Y: Integer);
begin
sbutton2.font. Size:=14;
end;
procedure Tglavnaya. sButton3MouseMove (Sender: TObject; Shift: TShiftState; X, \ увеличение текста кнопки
Y: Integer);
begin
sbutton3.font. Size:=14;
end;
procedure Tglavnaya. sButton4MouseMove (Sender: TObject; Shift: TShiftState; X, \ увеличение текста кнопки
Y: Integer);
begin
sbutton4.font. Size:=14;
end;
procedure Tglavnaya. sButton1MouseLeave (Sender: TObject); \ уменьшение текста кнопки
begin
sbutton1.font. Size:=10;
end;
procedure Tglavnaya. sButton2MouseLeave (Sender: TObject); \ уменьшение текста кнопки
begin
sbutton2.font. Size:=10;
end;
procedure Tglavnaya. sButton3MouseLeave (Sender: TObject); \ уменьшение текста кнопки
begin
sbutton3.font. Size:=10;
end;
procedure Tglavnaya. sButton4MouseLeave (Sender: TObject); \ уменьшение текста кнопки
begin
sbutton4.font. Size:=10;
end;
procedure Tglavnaya. FormClose (Sender: TObject; var Action: TCloseAction); \ закрытие формы
begin
zastavka. Close;
end;
procedure Tglavnaya. Timer2Timer (Sender: TObject); \ появление формы
begin
timer1. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue+5;
if AlphaBlendValue>250 then Timer2. Enabled:=false;
end;
procedure Tglavnaya. FormActivate (Sender: TObject); \ исчезновение формы
begin
{timer2. Enabled:=true;}
jg:=0;
end;
procedure Tglavnaya. N2Click (Sender: TObject); \ переход к форме теория
begin
teoria. Show;
glavnaya. Hide;
end;
procedure Tglavnaya. N3Click (Sender: TObject); \ переход к форме практика
begin
practika. Show;
glavnaya. Hide;
end;
procedure Tglavnaya. N4Click (Sender: TObject); \ переход к форме эмуляция
begin
imyl. Show;
glavnaya. Hide;
end;
procedure Tglavnaya. N6Click (Sender: TObject); \ открытие формы справка
begin
o_program.show;
end;
procedure Tglavnaya. Timer1Timer (Sender: TObject); \ переход к форме практика
begin
glavnaya. Hide;
practika. Show;
practika.timer1. Enabled:=true;
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
Timer1. Enabled:=false;
end;
procedure Tglavnaya. Timer3Timer (Sender: TObject); \ появление формы теория
begin
glavnaya. Hide;
teoria. Show;
teoria.timer1. Enabled:=true;
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
Timer3. Enabled:=false;
end;
procedure Tglavnaya. Timer4Timer (Sender: TObject); \ переход к форме эмуляция
begin
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
glavnaya. Hide;
imyl. AlphaBlendValue:=0;
imyl.timer1. Enabled:=true;
imyl. Show;
Timer4. Enabled:=false;
end;
end;
procedure Tglavnaya. N8Click (Sender: TObject); \ переход к форме справка
begin
spravka.show;
end;
var
teoria: Tteoria;
i:byte;
implementation
uses ychebnik, practic, Unit6;
{$R *.dfm}
procedure Tteoria. N6Click (Sender: TObject); \ закрытие программы
begin
if messagedlg ('Вы действительно хотите выйти?', mtConfirmation, mbOKCancel, 0)=1 then
close
else
exit;
teoria. Close;
glavnaya. Close;
end;
procedure Tteoria. N5Click (Sender: TObject); \ переход на главную
begin
timer2. Enabled:=true;
end;
procedure Tteoria. sTreeView1Click (Sender: TObject); \ выбор действия
begin
if streeview1. Items. Item[0]. Selected then webbrowser1. Navigate (GetCurrentDir+'straniciteoriaindbd.htm');
if streeview1. Items. Item[1]. Selected then webbrowser1. Navigate (GetCurrentDir+'straniciteoriaizobr.htm');
if streeview1. Items. Item[2]. Selected then webbrowser1. Navigate (GetCurrentDir+'straniciteorianachrab.htm');
if streeview1. Items. Item[3]. Selected then webbrowser1. Navigate (GetCurrentDir+'straniciteoriaparam.htm');
if streeview1. Items. Item[4]. Selected then webbrowser1. Navigate (GetCurrentDir+'straniciteoriapreodraz.htm');
if streeview1. Items. Item[5]. Selected then webbrowser1. Navigate (GetCurrentDir+'straniciteoriapunktmenu.htm');
end;
procedure Tteoria. N2Click (Sender: TObject); \ переход к форме эмуляция
begin
timer3. Enabled:=true;
end;
procedure Tteoria. N3Click (Sender: TObject); \ переход к форме практика
begin
timer4. Enabled:=true;
end;
procedure Tteoria. Timer1Timer (Sender: TObject); \ появление формы
begin
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue+5;
if AlphaBlendValue>250 then Timer1. Enabled:=false;
end;
procedure Tteoria. Timer2Timer (Sender: TObject); \ исчезновение формы
begin
begin
timer1. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
if t=1 then
practika. Hide;
glavnaya. AlphaBlendValue:=0;
Timer2. Enabled:=false;
glavnaya. Timer2. Enabled:=true;
glavnaya. Show;
end;
end;
end;
procedure Tteoria. FormCreate (Sender: TObject);
begin
i:=0;
end;
procedure Tteoria. Timer3Timer (Sender: TObject); \ переход к форме практика
begin
teoria. Hide;
practika. Show;
practika.timer1. Enabled:=true;
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
Timer3. Enabled:=false;
end;
procedure Tteoria. Timer4Timer (Sender: TObject); \ переход к форме эмуляция
begin
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
teoria. Hide;
imyl.timer1. Enabled:=true;
imyl. AlphaBlendValue:=0;
imyl. Show;
imyl.timer1. Enabled:=true;
Timer4. Enabled:=false;
end;
end;
end.
var
practika: Tpractika;
x:integer; k, p, n, t: Integer;
implementation
uses ychebnik, Unit3, test1, test2, test3, test4, test5, Unit4, Unit6,
Unit7, Unit13, Unit15;
{$R *.dfm}
procedure Tpractika. N8Click (Sender: TObject); \ выход из программы
begin
if messagedlg ('Вы действительно хотите выйти?', mtConfirmation, mbOKCancel, 0)=1 then
close
else
exit;
practika. Close;
end;
procedure Tpractika. Timer1Timer (Sender: TObject); \ переход к форме теория
begin
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue+5;
if AlphaBlendValue>250 then Timer1. Enabled:=false;
end;
procedure Tpractika. FormCreate (Sender: TObject);
begin
pnl1. Left:=-160;
k:=1;
n:=1;
t:=1;
timer1. Enabled:=false;
timer3. Enabled:=false;
glavnaya. AlphaBlendValue:=0;
end;
procedure Tpractika. FormActivate (Sender: TObject);
begin
{timer1. Enabled:=True;}
end;
procedure Tpractika. N7Click (Sender: TObject); \ переход к форме теория
begin
timer3. Enabled:=true;
t:=1;
end;
procedure Tpractika. FormClose (Sender: TObject; var Action: TCloseAction);
begin
zastavka.close;
glavnaya. Close
end;
procedure Tpractika. Tmr1Timer (Sender: TObject); \ выезд панели
begin
pnl1. Left:=pnl1. Left+1;
k:=k+1;
if k=310 then begin
tmr1. Enabled:=False;
timer2. Enabled:=False;
end;
Panel1. Left:=Panel1. Left+1;
k:=k+1;
if k=136 then begin
tmr1. Enabled:=False;
timer2. Enabled:=False;
end;
end;
procedure Tpractika. timer2Timer (Sender: TObject); \ исчезновение панели
begin
pnl1. Left:=pnl1. Left-1;
k:=k-1;
if k=0 then
begin
tmr1. Enabled:=False;
timer2. Enabled:=False;
end;
Panel1. Left:=Panel1. Left-1;
k:=k-1;
if k=0 then
begin
tmr1. Enabled:=False;
timer2. Enabled:=False;
end;
end;
procedure Tpractika. Image1Click (Sender: TObject); \ действие панели
begin
n:=n+1;
if (n mod 2=0) then
begin
timer2. Enabled:=False;
tmr1. Enabled:=True;
end;
if (n mod 2<>0) then
begin
timer2. Enabled:=True;
tmr1. Enabled:=False;
end;
begin
if tmr1. Enabled=true then begin image1. Visible:=true; image2. Visible:=false; end
else begin image2. visible:=true; image1. Visible:=false; end; end;
end;
procedure Tpractika. Image2Click (Sender: TObject); \ действие панели
begin
n:=n+1;
if (n mod 2=0) then
begin
timer2. Enabled:=False;
tmr1. Enabled:=True;
end;
if (n mod 2<>0) then
begin
timer2. Enabled:=True;
tmr1. Enabled:=False;
end;
begin
if tmr1. Enabled=true then begin image1. Visible:=true; image2. Visible:=false; end
else begin image2. visible:=true; image1. Visible:=false; end; end;
end;
procedure Tpractika. Timer3Timer (Sender: TObject); \ исчезновение формы
begin
timer1. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
if t=1 then
practika. Hide;
glavnaya. AlphaBlendValue:=0;
Timer3. Enabled:=false;
glavnaya. Timer2. Enabled:=true;
glavnaya. Show;
end;
end;
procedure Tpractika. sTreeView1Click (Sender: TObject); \ выбор действия
begin
if streeview1. Items. Item[1]. Selected then begin practika. Hide; imyl1. show; end;
if streeview1. Items. Item[2]. Selected then begin practika. Hide; test. show; end;
if streeview1. Items. Item[3]. Selected then webbrowser1. Navigate (GetCurrentDir+'stranicipracticlab1.htm');
if streeview1. Items. Item[5]. Selected then begin practika. Hide; imyl2. show; end;
if streeview1. Items. Item[6]. Selected then begin practika. Hide; test1.show; end;
if streeview1. Items. Item[7]. Selected then webbrowser1. Navigate (GetCurrentDir+'stranicipracticlab2.htm');
if streeview1. Items. Item[9]. Selected then begin practika. Hide; test2.show; end;
if streeview1. Items. Item[10]. Selected then webbrowser1. Navigate (GetCurrentDir+'stranicipracticlab3.htm');
if streeview1. Items. Item[12]. Selected then begin practika. Hide; test3.show; end;
if streeview1. Items. Item[13]. Selected then webbrowser1. Navigate (GetCurrentDir+'stranicipracticlab4.htm');
if streeview1. Items. Item[15]. Selected then begin practika. Hide; test4.show; end;
if streeview1. Items. Item[16]. Selected then webbrowser1. Navigate (GetCurrentDir+'stranicipracticlab5.htm');
end;
procedure Tpractika. N2Click (Sender: TObject); \ переход к форме теория
begin
timer5. Enabled:=true
end;
procedure Tpractika. N3Click (Sender: TObject); \ переход к форме эмуляция
begin
timer4. Enabled:=true
end;
procedure Tpractika. N4Click (Sender: TObject); \ переход к форме на главную
begin
timer3. Enabled:=true;
end;
procedure Tpractika. Timer4Timer (Sender: TObject); \ переход к форме эмуляция
begin
practika. Hide;
imyl. Show;
imyl.timer1. Enabled:=true;
timer3. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
Timer4. Enabled:=false;
end;
procedure Tpractika. Timer5Timer (Sender: TObject); \ переход к форме теория
begin
practika. Hide;
teoria. Show;
teoria.timer1. Enabled:=true;
timer3. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
Timer5. Enabled:=false;
end;
end.
var
imyl: Timyl;
x:integer; k, p, n, t: Integer;
implementation
uses ychebnik, Unit7, Unit13, Unit4, practic, Unit14, Unit15;
{$R *.dfm}
procedure Timyl. N3Click (Sender: TObject); \ переход на форму практика
begin
Timer2. Enabled:=true;
t:=2;
end;
procedure Timyl. sButton1Click (Sender: TObject); \ появление формы
begin
imyl. Hide;
imyl1.show;
imyl1. AlphaBlendValue:=255;
end;
procedure Timyl. N4Click (Sender: TObject); \ выход
begin
if messagedlg ('Вы действительно хотите выйти?', mtConfirmation, mbOKCancel, 0)=1 then
close
else
exit;
imyl. Close;
glavnaya. Close;
end;
procedure Timyl. sButton2Click (Sender: TObject); \ переход к эмуляции
begin
imyl. Hide;
imyl2.show;
end;
procedure Timyl. N5Click (Sender: TObject); \ переход на форму главная
begin
Timer2. Enabled:=true;
t:=2;
end;
procedure Timyl. N6Click (Sender: TObject);
begin
Timer4. Enabled:=true;
end;
procedure Timyl. Timer1Timer (Sender: TObject); \ скрытие формы
begin
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue+5;
if AlphaBlendValue>250 then Timer1. Enabled:=false;
end;
procedure Timyl. Timer2Timer (Sender: TObject);
begin
timer1. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
if t=2 then
begin
imyl. Hide;
glavnaya. AlphaBlendValue:=0;
Timer2. Enabled:=false;
glavnaya. Timer2. Enabled:=true;
glavnaya. Show;
end;
end;
end;
procedure Timyl. N7Click (Sender: TObject); \ переход на форму теория
begin
Timer3. Enabled:=true;
end;
procedure Timyl. Timer3Timer (Sender: TObject); \ переход на форму практика
begin
imyl. Hide;
practika. Show;
practika.timer1. Enabled:=true;
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
Timer3. Enabled:=false;
end;
procedure Timyl. Timer4Timer (Sender: TObject); \ переход на форму теория
begin
{teoria. AlphaBlendValue:=0;
imyl. Hide;
teoria.timer1. Enabled:=true;
teoria. Show;}
timer2. Enabled:=false;
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
imyl. Hide;
teoria. AlphaBlendValue:=0;
teoria.timer1. Enabled:=true;
teoria. Show;
Timer4. Enabled:=false;
end;
end;
procedure Timyl. N1Click (Sender: TObject);
begin
spravka.show;
end;
procedure Timyl. sButton1MouseMove (Sender: TObject; Shift: TShiftState; X, \ увеличение текста
Y: Integer);
begin
sbutton1.font. Size:=14;
end;
procedure Timyl. sButton1MouseLeave (Sender: TObject); \ уменьшение текста
begin
sbutton1.font. Size:=10;
end;
procedure Timyl. sButton2MouseLeave (Sender: TObject); уменьшение текста
begin
sbutton2.font. Size:=10;
end;
procedure Timyl. sButton2MouseMove (Sender: TObject; Shift: TShiftState; X, \ увеличение текста
Y: Integer);
begin
sbutton2.font. Size:=14;
end;
end.
var
imyl1: Timyl1;
implementation
uses ychebnik, practic, Unit6, Unit4;
{$R *.dfm}
procedure Timyl1. N10Click (Sender: TObject); \выход
begin
if messagedlg ('Вы действительно хотите выйти?', mtConfirmation, mbOKCancel, 0)=1 then
close
else
exit;
end;
procedure Timyl1. N9Click (Sender: TObject); \ переход на форму практика
begin
timer1. Enabled:=true;
t:=1;
end;
procedure Timyl1. Button1Click (Sender: TObject); \ эмуляция
begin
if radiobutton2. Checked=true then begin
panel2. Visible:=false;
panel3. Visible:=true;
end;
end;
procedure Timyl1. RadioButton2Click (Sender: TObject); \ эмуляция
begin
label1. Caption:='Создание новой модели';
end;
procedure Timyl1. RadioButton1Click (Sender: TObject); \ эмуляция
begin
label1. Caption:='открытие модели';
end;
procedure Timyl1. RadioButton3Click (Sender: TObject); \ эмуляция
begin
image6. Visible:=false;
image5. Visible:=false;
end;
procedure Timyl1. RadioButton4Click (Sender: TObject); \ эмуляция
begin
image6. Visible:=false;
image5. Visible:=true;
end;
procedure Timyl1. RadioButton5Click (Sender: TObject); \ эмуляция
begin
image6. Visible:=true;
image5. Visible:=false;
end;
procedure Timyl1. Button3Click (Sender: TObject); \ эмуляция
begin
if radiobutton5. Checked=true then begin
panel3. Visible:=false;
panel5. Visible:=true;
end;
end;
procedure Timyl1. FormCreate (Sender: TObject); \ эмуляция
begin
panel3. Visible:=false;
panel5. Visible:=false;
end;
procedure Timyl1. Timer1Timer (Sender: TObject); \переход на форму эмуляция
begin
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then
begin
if t=1 then
begin
glavnaya. AlphaBlendValue:=0;
glavnaya. Timer2. Enabled:=true;
glavnaya. Show;
imyl1. Hide;
timer1. Enabled:=false;
end;
end;
end;
procedure Timyl1. N6Click (Sender: TObject); \ переход на главную форму
begin
timer1. Enabled:=true;
t:=1;
end;
procedure Timyl1. Timer2Timer (Sender: TObject);
begin
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then begin
imyl1. Hide;
teoria. AlphaBlendValue:=0;
teoria.timer1. Enabled:=true;
teoria. Show;
Timer2. Enabled:=false;
end;
end;
procedure Timyl1. N5Click (Sender: TObject); \ переход на практику
begin
imyl1. Hide;
practika. Show;
practika. Timer1. Enabled:=true;
end;
procedure Timyl1. N4Click (Sender: TObject); \ переход на теорию
begin
timer2. Enabled:=true;
end;
procedure Timyl1. N3Click (Sender: TObject);
begin
timer3. Enabled:=true;
end;
procedure Timyl1. Timer3Timer (Sender: TObject);
begin
AlphaBlendValue:=AlphaBlendValue-5;
if AlphaBlendValue<5 then begin
imyl1. Hide;
imyl.timer1. Enabled:=true;
imyl. Show;
imyl.timer1. Enabled:=true;
Timer3. Enabled:=false;
end;
end;
procedure Timyl1. Image9Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('создание новой модели');
end;
procedure Timyl1. Image10Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('открытие модели');
end;
procedure Timyl1. Image11Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('отправка на печать');
end;
procedure Timyl1. Image17Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('уменьшение масштаба');
end;
procedure Timyl1. Image18Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('увеличение масштаба');
end;
procedure Timyl1. Image43Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('выбор шрифта');
end;
procedure Timyl1. Image42Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('выбор размера шрифта');
end;
procedure Timyl1. Image23Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('жирный текст');
end;
procedure Timyl1. Image24Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('Курсив');
end;
procedure Timyl1. Image25Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false; memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('подчеркнутый текст');
end;
procedure Timyl1. Image30Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('сущность');
end;
procedure Timyl1. Image35Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('объект рисования прямоугольник');
end;
procedure Timyl1. Image36Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('позволяет рисовать прямоугольник со скругленными углами');
end;
procedure Timyl1. Image37Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('овал');
end;
procedure Timyl1. Image38Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('линия');
end;
procedure Timyl1. Image39Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('кривая');
end;
procedure Timyl1. Image40Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('многоугольник');
end;
procedure Timyl1. Image41Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('написание текста');
end;
procedure Timyl1. Image12Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add (' диалога Report Browser для генерации отчетов');
end;
procedure Timyl1. Image14Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('Изменение уровня просмотра модели: уровень сущностей');
end;
procedure Timyl1. Image15Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('Изменение уровня просмотра модели: уровень атрибутов');
end;
procedure Timyl1. Image16Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('Изменение уровня просмотра модели: уровень определений');
end;
procedure Timyl1. Image19Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('изменение масштаба просмотра модели');
end;
procedure Timyl1. Image20Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('изменение масштаба просмотра модели');
end;
procedure Timyl1. Image21Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('Создание и переключение между подмножествами модели — Subject Area');
end;
procedure Timyl1. Image22Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('выбор типа модели');
end;
procedure Timyl1. Image26Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('позволяет изменять цвет текста');
end;
procedure Timyl1. Image28Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('позволяет заливать фигуры цветом');
end;
procedure Timyl1. Image27Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('позволяет задавать цвет линий');
end;
procedure Timyl1. Image29Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('курсор');
end;
procedure Timyl1. Image31Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('создает категорию между сущностями. для ее использования нужно щелкнуть сначало по одной затем по второй сущности');
end;
procedure Timyl1. Image32Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('идентифицирующая связь');
end;
procedure Timyl1. Image33Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('связь многие ко многим');
end;
procedure Timyl1. Image34Click (Sender: TObject); \ эмуляция
begin
label4. Visible:=false;
memo1. Visible:=true;
memo1. Clear;
memo1. Lines. Add ('неидентифицирующая связь');
end;
procedure Timyl1. Button5Click (Sender: TObject); \ эмуляция
begin
timer1. Enabled:=true;
t:=1;
end;
var
imyl2: Timyl2;
x:string;
implementation
uses ychebnik, Unit6;
{$R *.dfm}
procedure Timyl2. Button1Click (Sender: TObject); \ эмуляция
begin
if radiobutton1. Checked=true then
begin
spanel1. Visible:=false;
spanel2. Visible:=true;
end
else begin
label2. Visible:=true;
label1. Caption:=('Нажмите Create');
label2. Caption:=('a new model');
end;
end;
procedure Timyl2. FormCreate (Sender: TObject); \ эмуляция
begin
spanel2. Visible:=false;
spanel3. Visible:=false;
spanel4. Visible:=false;
spanel5. Visible:=false;
spanel6. Visible:=false;
end;
procedure Timyl2. RadioButton3Click (Sender: TObject); \ эмуляция
begin
image4. Visible:=false;
image5. Visible:=false;
end;
procedure Timyl2. RadioButton4Click (Sender: TObject); \ эмуляция
begin
image4. Visible:=true;
image5. Visible:=false;
end;
procedure Timyl2. RadioButton5Click (Sender: TObject); \ эмуляция
begin
image4. Visible:=false;
image5. Visible:=true;
end;
procedure Timyl2. Button2Click (Sender: TObject); \ эмуляция
begin
if radiobutton5. Checked=true then
begin
spanel2. Visible:=false;
spanel3. Visible:=true;
end;
end;
procedure Timyl2. Image10Click (Sender: TObject); \ эмуляция
begin
spanel3. Visible:=false;
spanel4. Visible:=true;
end;
procedure Timyl2. Edit1Enter (Sender: TObject); \ эмуляция
begin
edit1. Text:=edit1. Text;
end;
procedure Timyl2. Edit1MouseMove (Sender: TObject; Shift: TShiftState; X, \ эмуляция
Y: Integer);
begin
if edit1. Text='сущность1' then begin
label5. Visible:=true;
label6. Visible:=true;
label7. Visible:=true;
label5. Caption:='теперь 2 раза';
label6. Caption:='щелкните по самой';
label7. Caption:='Сущности';
end;
end;
procedure Timyl2. sPanel4Click (Sender: TObject); \ эмуляция
begin
label6. Visible:=false;
label7. Visible:=false;
end;
procedure Timyl2. Image14DblClick (Sender: TObject); \ эмуляция
begin
spanel4. Visible:=false;
spanel5. Visible:=true;
end;
procedure Timyl2. Button3Click (Sender: TObject); \ эмуляция
begin
edit2. Visible:=true;
button4. Visible:=true;
image17. Visible:=true;
button3. Visible:=false;
label8. Caption:='в поле Atribute name';
label9. Caption:='введите имя атрибута';
label10. Caption:='и нажмите ОК';
end;
procedure Timyl2. Button4Click (Sender: TObject); \ эмуляция
begin
x:=edit2. Text;
spanel5. Visible:=false;
spanel6. Visible:=true;
edit3. Text:=x;
end;
procedure Timyl2. Button5Click (Sender: TObject); \ эмуляция
begin
imyl2. Hide;
glavnaya.show;
glavnaya. Timer2. Enabled:=true;
end;
procedure Timyl2. Button6Click (Sender: TObject); \ эмуляция
begin
imyl2. Hide;
imyl.show;
imyl. Timer1. Enabled:=true;
end;
var
test: Ttest;
k, l, s: integer;
implementation
uses ychebnik, practic, Unit5;
{$R *.dfm}
procedure Ttest. sButton1Click (Sender: TObject); \ тестирование
begin
test. Height:=577;
test. Width:=910;
label1. Visible:=false;
sbutton1. Visible:=false;
sbutton2. Visible:=false;
spanel1. Visible:=true;
spanel1. Align:=alclient;
end;
procedure Ttest. FormCreate (Sender: TObject); \ тестирование
begin
k:=0; l:=0; s:=1;
test. Height:=257;
test. Width:=463;
spanel1. Visible:=false;
spanel2. Visible:=false;
spanel3. Visible:=false;
spanel4. Visible:=false;
spanel5. Visible:=false;
spanel6. Visible:=false;
label1. Visible:=true;
sbutton1. Visible:=true;
sbutton2. Visible:=true;
end;
procedure Ttest. sButton3Click (Sender: TObject); \ тестирование
begin
if radiogroup1. ItemIndex=0 then begin
k:=k+1;
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0); end
else begin
l:=l+1;
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0); end;
slabel10. Caption:=inttostr (k);
slabel12. Caption:=inttostr (l);
spanel2. Visible:=true;
spanel2. Align:=alclient;
spanel1. Visible:=false;
end;
procedure Ttest. sButton4Click (Sender: TObject); \ тестирование
begin
if scheckbox2. Checked=true then begin
k:=k+1;
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0); end
else begin
l:=l+1;
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0); end;
slabel16.caption:=inttostr (k);
slabel18. Caption:=inttostr (l);
spanel2. Visible:=false;
spanel3. Visible:=true;
spanel3. Align:=alclient;
end;
procedure Ttest. sButton5Click (Sender: TObject); \ тестирование
begin
if scheckbox5. Checked=true then begin
k:=k+1;
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0); end
else begin
l:=l+1;
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0); end;
slabel22. Caption:=inttostr (k);
slabel24. Caption:=inttostr (l);
spanel3. Visible:=false;
spanel4. Visible:=true;
spanel4. Align:=alclient;
end;
procedure Ttest. sButton6Click (Sender: TObject); \ тестирование
begin
if sradiobutton3. Checked=true then begin
k:=k+1;
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0); end
else begin
l:=l+1;
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0); end;
slabel28. Caption:=inttostr (k);
slabel30. Caption:=inttostr (l);
spanel4. Visible:=false;
spanel5. Visible:=true;
spanel5. Align:=alclient;
end;
procedure Ttest. sButton7Click (Sender: TObject); \ тестирование
var la: string;
begin
if scheckbox10. Checked=true then begin
k:=k+1;
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0); end
else begin
l:=l+1;
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0); end;
slabel37. Caption:=inttostr (k);
slabel38. Caption:=inttostr (l);
slabel39. Caption:=inttostr (k);
slabel40. Caption:=inttostr (s);
spanel5. Visible:=false;
spanel6. Visible:=true;
spanel6. Align:=alclient;
la:=nick;
slabel41. Caption:='Здравствуйте '+la;
end;
procedure Ttest. sButton9Click (Sender: TObject); \ тестирование
begin
test. Hide;
glavnaya.show;
glavnaya. Timer2. Enabled:=true;
end;
procedure Ttest. sButton8Click (Sender: TObject); \ тестирование
begin
spanel6. Visible:=false;
spanel1. Visible:=true;
s:=s+1;
k:=0; l:=0;
end;
procedure Ttest. sButton10Click (Sender: TObject); \ тестирование
begin
test. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
procedure Ttest. sButton2Click (Sender: TObject); \ тестирование
begin
test. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
var
test1: Ttest1;
k, l, m: integer;
implementation
uses ychebnik, Unit5, practic;
{$R *.dfm}
procedure Ttest1.sButton1Click (Sender: TObject); \ тестирование
begin
test1. Height:=477;
test1. Width:=852;
spanel1. Visible:=true;
spanel1. Align:=alclient;
sbutton1. Visible:=false;
sbutton2. Visible:=false;
end;
procedure Ttest1. FormCreate (Sender: TObject); \ тестирование
begin
spanel1. Visible:=false;
spanel2. Visible:=false;
spanel3. Visible:=false;
spanel4. Visible:=false;
spanel5. Visible:=false;
spanel6. Visible:=false;
k:=0;
l:=0;
m:=1;
end;
procedure Ttest1.sButton3Click (Sender: TObject); \ тестирование
begin
if radiogroup1. ItemIndex=0 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
spanel1. Visible:=false;
spanel2. Visible:=true;
spanel2. Align:=alclient;
label4. Caption:=inttostr (k);
label6. Caption:=inttostr (l);
end;
procedure Ttest1.sButton4Click (Sender: TObject); \ тестирование
begin
if radiobutton3. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
spanel2. Visible:=false;
spanel3. Visible:=true;
spanel3. Align:=alclient;
label10. Caption:=inttostr (k);
label12. Caption:=inttostr (l);
end;
procedure Ttest1.sButton5Click (Sender: TObject); \ тестирование
begin
if checkbox2. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
spanel3. Visible:=false;
spanel4. Visible:=true;
spanel4. Align:=alclient;
label16. Caption:=inttostr (k);
label18. Caption:=inttostr (l);
end;
procedure Ttest1.sButton6Click (Sender: TObject); \ тестирование
begin
if radiogroup2. ItemIndex=0 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
spanel4. Visible:=false;
spanel5. Visible:=true;
spanel5. Align:=alclient;
label21. Caption:=inttostr (k);
label23. Caption:=inttostr (l);
end;
procedure Ttest1.sButton8Click (Sender: TObject); \ тестирование
var la: string;
begin
if radiobutton4. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
spanel5. Visible:=false;
spanel6. Visible:=true;
spanel6. Align:=alclient;
label32. Caption:=inttostr (k);
label33. Caption:=inttostr (l);
label34. Caption:=inttostr (m);
if k<=2 then label35. Caption:='Неудовлетворительно';
if k=3 then label35. Caption:='Удовлетворительно';
if k=4 then label35. Caption:='Хорошо';
if k=5 then label35. Caption:='Отлично';
la:=nick;
label26. Caption:=la;
end;
procedure Ttest1.sButton9Click (Sender: TObject); \ тестирование
begin
k:=0;
l:=0;
spanel6. Visible:=false;
spanel1. Visible:=true;
spanel1. Align:=alclient;
m:=m+1;
end;
procedure Ttest1.sButton10Click (Sender: TObject); \ тестирование
begin
test1. Hide;
glavnaya.show;
glavnaya. Timer2. Enabled:=true;
end;
procedure Ttest1.sButton7Click (Sender: TObject); \ тестирование
begin
test1. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
procedure Ttest1.sButton2Click (Sender: TObject); \ тестирование
begin
test1. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
var
test2: Ttest2;
var k, l, s: integer;
implementation
uses practic, ychebnik, Unit3, Unit5;
{$R *.dfm}
procedure Ttest2. FormCreate (Sender: TObject);
begin
spanel1. Visible:=false;
spanel2. Visible:=false;
spanel3. Visible:=false;
spanel4. Visible:=false;
spanel5. Visible:=false;
spanel6. Visible:=false;
test2. Height:=209;
test2. Width:=358;
k:=0;
l:=0;
s:=1;
reg:=registr.sEdit1. Text;
end;
procedure Ttest2.sButton7Click (Sender: TObject); \ тестирование
begin
spanel1. Visible:=true;
sbutton7. Visible:=false;
sbutton8. Visible:=false;
slabel1. Visible:=true;
spanel1. Align:=alclient;
test2. Width:=700;
test2. Height:=389;
end;
procedure Ttest2.sButton1Click (Sender: TObject); \ тестирование
begin
if radiogroup1. ItemIndex=0 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label6. Caption:=inttostr (k);
label8. Caption:=inttostr (l);
spanel1. Visible:=false;
spanel2. Visible:=true;
spanel2. Align:=alclient;
end;
procedure Ttest2.sButton2Click (Sender: TObject); \ тестирование
begin
if radiobutton2. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label12. Caption:=inttostr (k);
label14. Caption:=inttostr (l);
spanel2. Visible:=false;
spanel3. Visible:=true;
spanel3. Align:=alclient;
end;
procedure Ttest2.sButton3Click (Sender: TObject); \ тестирование
begin
if checkbox1. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label17. Caption:=inttostr (k);
label19. Caption:=inttostr (l);
spanel3. Visible:=false;
spanel4. Visible:=true;
spanel4. Align:=alclient;
end;
procedure Ttest2.sButton4Click (Sender: TObject); \ тестирование
begin
if radiogroup2. ItemIndex=1 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label22. Caption:=inttostr (k);
label24. Caption:=inttostr (l);
spanel4. Visible:=false;
spanel5. Visible:=true;
spanel5. Align:=alclient;
end;
procedure Ttest2.sButton5Click (Sender: TObject); \ тестирование
var la: string;
begin
if radiobutton5. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label27. Caption:=reg;
label29. Caption:=inttostr (k);
label31. Caption:=inttostr (l);
if k<=2 then label33. Caption:='Неудовлетворительно';
if k=3 then label33. Caption:='Удовлетворительно';
if k=4 then label33. Caption:='Хорошо';
if k=5 then label33. Caption:='Отлично';
label35. Caption:=inttostr (s);
la:=nick;
label27.caption:=la;
spanel5. Visible:=false;
spanel6. Visible:=true;
spanel6. Align:=alclient;
end;
procedure Ttest2.sButton6Click (Sender: TObject); \ тестирование
begin
spanel6. Visible:=false;
spanel1. Visible:=true;
spanel1. Align:=alclient;
s:=s+1;
end;
procedure Ttest2.sButton9Click (Sender: TObject); \ переход на форму практика
begin
test2. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
procedure Ttest2.sButton10Click (Sender: TObject); \ переход на главную форму
begin
test2. Hide;
glavnaya.show;
glavnaya. Timer2. Enabled:=true;
end;
procedure Ttest2.sButton8Click (Sender: TObject);
begin
test2. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
var
test3: Ttest3;
var k, l, s: integer;
implementation
uses test3, practic, ychebnik, Unit5;
{$R *.dfm}
procedure Ttest3. FormCreate (Sender: TObject);
begin
spanel1. Visible:=false;
spanel2. Visible:=false;
spanel3. Visible:=false;
spanel4. Visible:=false;
spanel5. Visible:=false;
spanel6. Visible:=false;
test2. Height:=209;
test2. Width:=358;
k:=0;
l:=0;
s:=1;
end;
procedure Ttest3.sButton1Click (Sender: TObject); \ тестирование
begin
spanel1. Visible:=true;
sbutton1. Visible:=false;
sbutton2. Visible:=false;
label1. Visible:=true;
spanel1. Align:=alclient;
test3. Width:=700;
test3. Height:=389;
end;
procedure Ttest3.sButton3Click (Sender: TObject); \ тестирование
begin
if radiogroup1. ItemIndex=0 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label6. Caption:=inttostr (k);
label8. Caption:=inttostr (l);
spanel1. Visible:=false;
spanel2. Visible:=true;
spanel2. Align:=alclient;
end;
procedure Ttest3.sButton4Click (Sender: TObject); \ тестирование
begin
if radiobutton2. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label12. Caption:=inttostr (k);
label14. Caption:=inttostr (l);
spanel2. Visible:=false;
spanel3. Visible:=true;
spanel3. Align:=alclient;
end;
procedure Ttest3.sButton5Click (Sender: TObject); \ тестирование
begin
if checkbox1. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label18. Caption:=inttostr (k);
label20. Caption:=inttostr (l);
spanel3. Visible:=false;
spanel4. Visible:=true;
spanel4. Align:=alclient;
end;
procedure Ttest3.sButton6Click (Sender: TObject); \ тестирование
begin
if radiobutton7. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label24. Caption:=inttostr (k);
label26. Caption:=inttostr (l);
spanel4. Visible:=false;
spanel5. Visible:=true;
spanel5. Align:=alclient;
end;
procedure Ttest3.sButton7Click (Sender: TObject); \ тестирование
var la: string;
begin
if radiobutton12. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label33. Caption:=inttostr (k);
label34. Caption:=inttostr (l);
if k<=2 then label36. Caption:='Неудовлетворительно';
if k=3 then label36. Caption:='Удовлетворительно';
if k=4 then label36. Caption:='Хорошо';
if k=5 then label36. Caption:='Отлично';
label35. Caption:=inttostr (s);
spanel5. Visible:=false;
spanel6. Visible:=true;
spanel6. Align:=alclient;
la:=nick;
label28. Caption:='Здравствуйте' +la;
end;
procedure Ttest3.sButton8Click (Sender: TObject); \ тестирование
begin
spanel6. Visible:=false;
spanel1. Visible:=true;
spanel1. Align:=alclient;
s:=s+1;
end;
procedure Ttest3.sButton9Click (Sender: TObject); \ переход на практику
begin
test3. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
procedure Ttest3.sButton10Click (Sender: TObject); \ переход на главную
begin
test3. Hide;
glavnaya.show;
glavnaya. Timer2. Enabled:=true;
end;
procedure Ttest3.sButton2Click (Sender: TObject);
begin
test3. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
var
test4: Ttest4;
var k, l, s: integer;
implementation
uses test3, practic, ychebnik, Unit5;
{$R *.dfm}
procedure Ttest4. FormCreate (Sender: TObject); \ тестирование
begin
spanel1. Visible:=false;
spanel2. Visible:=false;
spanel3. Visible:=false;
spanel4. Visible:=false;
spanel5. Visible:=false;
spanel6. Visible:=false;
test2. Height:=209;
test2. Width:=358;
k:=0;
l:=0;
s:=1;
end;
procedure Ttest4.sButton1Click (Sender: TObject); \ тестирование
begin
spanel1. Visible:=true;
sbutton1. Visible:=false;
sbutton2. Visible:=false;
label1. Visible:=true;
spanel1. Align:=alclient;
test4. Width:=700;
test4. Height:=389;
end;
procedure Ttest4.sButton3Click (Sender: TObject); \ тестирование
begin
if radiogroup1. ItemIndex=0 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label6. Caption:=inttostr (k);
label8. Caption:=inttostr (l);
spanel1. Visible:=false;
spanel2. Visible:=true;
spanel2. Align:=alclient;
end;
procedure Ttest4.sButton4Click (Sender: TObject); \ тестирование
begin
if radiobutton2. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label12. Caption:=inttostr (k);
label14. Caption:=inttostr (l);
spanel2. Visible:=false;
spanel3. Visible:=true;
spanel3. Align:=alclient;
end;
procedure Ttest4.sButton5Click (Sender: TObject); \ тестирование
begin
if checkbox2. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label18. Caption:=inttostr (k);
label20. Caption:=inttostr (l);
spanel3. Visible:=false;
spanel4. Visible:=true;
spanel4. Align:=alclient;
end;
procedure Ttest4.sButton6Click (Sender: TObject); \ тестирование
begin
if radiogroup2. ItemIndex=1 then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label23. Caption:=inttostr (k);
label25. Caption:=inttostr (l);
spanel4. Visible:=false;
spanel5. Visible:=true;
spanel5. Align:=alclient;
end;
procedure Ttest4.sButton7Click (Sender: TObject); \ тестирование
var la: string;
begin
if radiobutton4. Checked=true then begin
messagedlg ('Правильный ответ', mtconfirmation, [mbOk], 0);
k:=k+1; end
else
begin
messagedlg ('Неправильный ответ', mtconfirmation, [mbOk], 0);
l:=l+1;
end;
label32. Caption:=inttostr (k);
label33. Caption:=inttostr (l);
if k<=2 then label35. Caption:='Неудовлетворительно';
if k=3 then label35. Caption:='Удовлетворительно';
if k=4 then label35. Caption:='Хорошо';
if k=5 then label35. Caption:='Отлично';
label34. Caption:=inttostr (s);
la:=nick;
label27. Caption:='Здравствуйте' + la;
spanel5. Visible:=false;
spanel6. Visible:=true;
spanel6. Align:=alclient;
end;
procedure Ttest4.sButton8Click (Sender: TObject); \ тестирование
begin
spanel6. Visible:=false;
spanel1. Visible:=true;
spanel1. Align:=alclient;
s:=s+1;
end;
procedure Ttest4.sButton9Click (Sender: TObject); \ переход на практику
begin
test4. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
procedure Ttest4.sButton10Click (Sender: TObject); \ переход на главную
begin
test4. Hide;
glavnaya.show; glavnaya. Timer2. Enabled:=true;
end;
procedure Ttest4.sButton2Click (Sender: TObject);
begin
test4. Hide;
practika.show;
practika. Timer1. Enabled:=true;
end;
end.