Home

Page 111
Page 111
background image

104 Глава 3

end;

end;

end ;

end;

Все это нужно написать раньше кода обработчика события FormCreate. Эта

функция не относится к объекту основного окна и абсолютно самостоятель-

на, поэтому она должна быть описана раньше, чем будет использоваться.

В противном случае компилятор выдаст ошибку, потому что не сможет най-

ти ее описание.

Если вы сделали все. что написано выше, вы сможете запустить программу

и наслаждаться результатом. Но у нее есть один недостаток — окно не имеет

строки заголовка и состоит только из одной клиентской части, а значит, его
нельзя перемещать по экрану. Но эта проблема решается очень просто.

Для начала в разделе private объявления формы укажем три переменные:

private

{ Private declarations }

Dragging : Boolean;

OldLeft, OldTop: Integer;

Переменная Dragging будет отвечать за возможность перетаскивания. В пе-

ременных OldLeft и OldTop будут сохраняться первоначальные координаты

окна. На всякий случай в обработчике события

 можно принуди-

тельно записать в переменную Dragging значение false, чтобы случайно

при старте в нее не попало true и непроизвольное перетаскивание.

Теперь создадим обработчик события

 для главной формы

и впишем в него следующее:

procedure

 TObject; Button:

Shift:

 X, Y: Integer);

begin

if

 then

begin

Dragging

 True;

OldLeft := X;
OldTop

 Y;

end;


Copyright © 2020 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.