Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_rab8_D.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
422.4 Кб
Скачать
  1. Компіляція і запуск програми

Для компіляції програми з подальшим її виконанням можна натиснути клавішу <F9>, клацнути на кнопці Run панелі інструментів або виконати команду меню Run Run.

П ри спробі відкомпілювати програму з'явиться повідомлення про те, що форма Forml посилається на форму Form2, оголошену в модулі Lucky2, і що необхідно додати посилання на цей модуль в розділ uses.

Якщо в цьому вікні натиснути кнопку Yes, то в розділ реалізації (implementation) програмного модуля Luckyl.pas буде автоматично додана відповідна посилання:

Implementation

uses Lucky2;

  1. Реалізуємо функціональність підказок. Для цього вийдіть з програми і поверніться в середовище Delphi.

    1. Так, підказки типу "Дзвінок другу" і "Допомога залу" будуть просто видавати вікно з правильною відповіддю. Серед підказок щодо реалізації найскладніша - "50 на 50". Почнемо з неї:

Створіть oбpобник події OnClick для компонентів yes50:

procedure TForml.yes50Click (Sender: TObject);

begin:

yes50.Visible: = False; // прибираємо підказку

no50.Visible: = True; // показуємо малюнок, який повідомляє, що підказка вже використана

win: = TIniFile.Create ('ss');

if anl.Caption <>

win.ReadString ('Answers', IntToStr (a), anl.Caption)

then begin // перевіряємо: якщо перший варіант, то це - неправильний варіант відповіді

anl.Enabled: = False; // прибираємо його

pd: = pd + 1; // збільшуємо лічильник прибраних варіантів

end;

if an2.Caption <>

win.ReadString ('Answers', IntToStr (a), an2.Caption)

then begin

an2.Enabled: = False;

pd: = pd + 1;

end;

if pd = 2

then

// Якщо два перші варіанти і є неправильні, то нема чого перевіряти далі

ShowMessage ('Тепер ви повинні вибрати з цих' +

'Двох варіантів!')

else begin

if аn3.Caption <>

Win.ReadString ('Answers', IntToStr (a), anl.Caption)

then begin

an3.Enabled: = False; pd: = pd + 1;

end;

if pd <> 2 then

// Якщо ми дійшли до 4 варіанти, а лічильник не дорівнює 2,

an4.Enabled: = False; // то прибираємо і четвертий варіант

end;

win.Free;

end;

    1. Тепер розглянте подію OnClick для компонента yesZal:

procedure TForml.yesZalClick (Sender: TOtrject);

begin

yesZal.Visible: = False;

noZal.Visible: = True;

win: = TIniFile.Create (ss);

ss: = win.ReadString ('Answers', IntToStr (a), anl.Caption);

ShowMessage ("Зал переконаний, що правильна відповідь - '+ ss);

win.Free;

end;

    1. З "дзвінком другу" все те ж саме, тільки потрібно підставити відповідні змінні:

procedure TForml.yesZvonokClick (Sender: TObject);

begin

yesZvonok.Visible: = False; noZvonok.Visible: = True;

win: = TIniFile.Create (ss);

ss: = win.ReadString ('Answers', IntToStr (a), anl.Caption);

ShowMessage ('Друг переконаний, що правильна відповідь -' + ss);

win.Free;

end;

    1. Тепер необхідно зробити так, щоб щось відбувалося, коли користувач намагається скористатися підказкою кілька разів. Отже, подія OnClick для компонента no50, noZal, noZvonok:

procedure TForml.no50Click (Sender: TObject);

begin

MessageDlg ('Ви вже скористалися цією підказкою!'

mtError, [mbok], 0);

end;

procedure TForml.noZvonokClick (Sender: TObject);

begin

MessageDlg ('Ви вже скористалися цією підказкою!',

mtError, [mbok], 0);

end;

procedure TForml.noZalClick (Sender: TObject);

begin

MessageDlg ('Ви вже скористалися цією підказкою!',

mtError, [mbok], 0);

end;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]