|
|
Мини-проекты в Delphi
Проект «Неуловимая кнопка»
Свойство формы Caption изменяем на «Прыгающая кнопка». Свойство формы Name оставим Form1. Свойство формы BordeStyle устанавливаем bsDialog, оно не позволяет пользователю изменять размеры формы и закрыть программу управляющей кнопкой, т. к. ее не будет. Размещаем на форме кнопку класса TButton и на ней «Выход» (свойство Caption).
Большинство объектов имеют общие свойства, определяющие размеры и положение объекта на форме:
Width – ширина объекта;
Height – высота объекта;
Left – расстояние от верхнего края формы
Top – расстояние от левого края формы.
В этой программе – шутке кнопка будет «перепрыгивать» на новое место при наведении на нее указателя «мыши» на новое место случайным образом. Для этого используем стандартную функцию Random(x), где x – integer (целое число). Она возвращает случайное целое в диапазоне от 0 до x-1.
В разделе для переменных после служебного слова var записываем две переменные xc,yc :integer; - координаты верхнего левого угла кнопки.
Переходим к событиям:
1) Для клика по кнопке для завершения работы программы
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.Terminate;
end;
2) Для наведения указателя мыши на кнопку
procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
end;
В заготовку событийной процедуры между словами begin и end записываем:
Randomize; //- инициализация датчика случайных чисел
x:=Random(Form1.ClientWidth -Button1.Width ); //- вычислениеэтихкоординат
y:=Random(Form1.ClientHeight - Button1.Height );//случайнымобразом
Button1.Left:=x; //перемещение кнопки по этим координатам
Button1.Top :=y;
Все, программа готова. Остается проверить ее работу запустив ее на выполнение.
|
|