В этой статье я расскажу как сделать приложение, которое будет убегать от мыши к примеру при наведении курсора на кнопку.
Создаем в билдере новый проект. В опциях формы, полю «Name» присвоим значение «FormTest».
Довляем на форму кнопку Button1, переходим в список событий, и находим OnMouseEnter.
OnMouseEnter — это событие которое срабатывает при наведении мыши на компонент(в нашем случае на кнопку). Щелкаем по нему 2 раза. Для перемещения формы в случайную позицию воспользуемся функцией random(), которая может генерировать случайные числа от нуля до заданного ей значения, для этого в событии вписываем следующий код:
FormTest->Left = random(1000); //Отступ формы от левого края
FormTest->Top = random(600); //Отступ формы от верхнего края
В редакторе должно получиться так:
//---------------------------------------------------------------------------
#include
#pragma hdrstop
#include "mail.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormTest *FormTest;
//---------------------------------------------------------------------------
__fastcall TFormTest::TFormTest(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormTest::Button1MouseEnter(TObject *Sender)
{
FormTest->Left = random(1000); //Отступ формы от левого края
FormTest->Top = random(600); //Отступ формы от верхнего края
}
//---------------------------------------------------------------------------
Вот и все, наша программа готова! Компилируем и пробуем навести курсор на кнопку:)
Такое можно делать нетолько для кнопки, а для всех компонентов где есть событие OnMouseEnter.
На заметку: В 6 версии билдера это событие называется OnMouseMove
Реальный пример программы в этой статье.
