ається відразу ж після запуску.
В
Рисунок 1 Вид програми після запуску
Приклад натиснутою панелі зображений на малюнку 2.
Pole: array [1 .. MAX_H, 1 .. MAX_W] of integer;
{Pole [i, j] <100 - код картинки, клітина закрита; [i, j]> 100 і <200 - клітина відкрита, тобто гравець бачить картинку;
В
Малюнок 2 Вид натиснутою панелі в програмі
Наступним кроком написання програми є процедура перевірки на виграш. В якості даної процедури використовуємо компонент TTimer. p align="justify"> Між словами try та except поміщаються захищаються від помилок оператори. Якщо при виконанні будь-якого з цих операторів виникає виняткова ситуація, то управління передається операторам між словами except і end, утворюючим блок обробки виняткових ситуацій. При нормальному (безпомилковому) виконанні програми блок except ... end пропускається. p align="justify"> Отже, подальшу розробку програми здійснюємо в захищеному блоці.
Перевіряємо стиль панелей по горизонталі, вертикалі і діагоналі. Якщо хоч один ряд має не початковий стиль панелей, то порівнюємо заголовки панелей даного ряду. Якщо після перевірки з'ясовується, що заголовки даного ряду не рівні - гра триває, а якщо ж з'ясовується, що дорівнюють, то відкриваємо модальне вікно (Малюнку 3)
В
Малюнок 3 Модальне вікно
begin
Form1.Canvas.Font.Name: = 'Times New Roman';
Form1.Canvas.Font.Size: = 36;
Form1.Canvas.Font.Color: = clBlack;
Form1.Canvas.TextOut (70,160, 'Кінець гри!');
Form1.Canvas.Font.Size: = 10;
Form1.Canvas.TextOut (120,210, 'Ахметов І.Р., 2012'); end
Програмування кнопки Нова гра в меню програми робиться в один рядок. Кнопка програмується у події OnClick:
procedure TForm1.N1Click (Sender: TObject);
Pole [open1.col, open1.row]: = Pole [open1.col, open1.row] + 100;
Pole [open2.col, open2.row]: = Pole [open2.col, open2.row] + 100;
count: = 0;
// отрісовать клітини
Kletka (open2.col, open2.row);
Kletka (open1.col, open1.row);
// зупинка таймера
Form1.Timer1.Enabled: = False;
Canvas.Rectangle (0,0, ClientWidth, ClientHeight);
NewGame;
clock: = 0;
end;
В
Малюнок 4 Модальне вікно
Програмування кнопки ?