СообЧа > База Знаний > Программирование > Delphi

Вопрос

Как сделать так, чтобы пока курсор мыши находится над объектом (Panel1), он изменял свой цвет?

Ответ

Сделать это можно так:

var Flip:Boolean;
//На форме должно быть: Timer1 и Panel1
//у Формы в событии OnMouseMove пишем
Procedure TForm1.FormMouseMove(…)
begin
if X > Panel1.Left && X < Panel1.Left + Panel1.Width && Y
>Panel1.Top && Y < Panel1.Top + Panel1.Width then
Timer1.Enabled:= true;
else
Timer1.Enabled:= false;
end;
//Выставляем у таймера нужное время и пишем в его событии OnTimer
//такой код
procedure TForm1.Timer1Timer(Sender:TObject)
begin
Flip = not Flip;
if Flip = true then
Panel1.Color:= clRed;
else
Panel1.Color:= clGreen;
end;


Вот и все. Ну, а дальше уже вариации на эту тему.

Sergey



Copyright © 2000-2004 Сообщество Чайников
Контактная информация