дактора коду, в секцію implementation слід помістити опис глобальних констант (розділ const) і змінних (розділ var). Потім можна приступити до створення процедур обробки подій.
Їх у програмі три:
1. Обробка події OnActivate для стартової форми. p> 2. Обробка події Onclick для командної кнопки Button1.
3. Процедура обробки події Onclick - одна, спільна для перемикачів вибору відповіді. p> Після запуску програми і виведення на екран стартовою форми відбувається подія onActivate. Процедура FormActivate спочатку викликає процедуру ResetForm, яка, привласнюючи значення False властивості Visible, робить невидимими поля виводу альтернативних відповідей і всі перемикачі. Аналогічно робиться невидимої область ілюстрації. Крім того, процедура встановлює максимально можливу ширину полів міток альтернативних відповідей.
Після очищення форми перевіряється, чи зазначений при запуску програми параметр - ім'я текстового файлу з питаннями тесту.
Якщо параметр не вказаний (Значення ParamСount в цьому випадку дорівнює нулю), то присвоєнням значення властивості Caption мітки Label5 виводиться повідомлення: В«Не заданий файл питань тесту В»і властивості Tag кнопки Buttonl присвоюється значення 2 (Buttonl.Tag: = 2 ;). Якщо параметр заданий, то відкривається файл тесту. p> Програма тестування отримує ім'я файлу тесту як результат функції ParamStr (1). Реалізація програми передбачає, що якщо ім'я файлу тесту задано без вказівки шляху доступу до нього, то файл тесту і файли з ілюстраціями знаходяться в тому ж каталозі, що і програма тестування. Якщо шлях доступу вказаний, то файли з ілюстраціями повинні знаходитися в тому ж каталозі, що і файл тесту. Такий підхід дозволяє згрупувати всі файли одного тесту в одному каталозі.
Відкривається файл тесту звичайним чином. Спочатку зверненням до процедури AssignFile ім'я файлу зв'язується з файлової змінної, а потім викликається інструкція відкриття файлу для читання.
Після успішного відкриття файлу викликається процедура Infо яка зчитує з файлу інформацію про тест і виводить її у форму привласненням прочитаного тексту властивості Caption поля мітки Label5.
Потім викликається процедура Get Level, яка зчитує з файлу тесту інформацію про рівні оцінки. Ця процедура заповнює масиви level і mes.
Після виведення інформаційного повідомлення програма чекає, коли користувач натисне кнопку "Почати" (Button1). p> Командна кнопка Button1 використовується для:
В· аварійного завершення роботи програми (у разі, якщо не задано ім'я файлу тесту);
В· початку тестування (після прочитання інформаційного повідомлення);
В· переходу до наступного питання (після вибору одного з відповідей);
В· завершення роботи програми (після прочитання результатів тестування).
Властивість Tag кнопки Button1, використовується для ідентифікації поточного стану форми і вибору дії при натисканні кнопки Button...