Идёт загрузка страницы...

htp://aptem.net.ru





Подсветка компонента во время перемещения над ним мыши

Я хочу создать компонент, реагирующий на перемещение мыши над его областью, но не знаю как.

Вы должны обрабатывать сообщения CM_MOUSEENTER и CM_MOUSELEAVE примерно таким образом:


   
TYourObject = class(TAnyControl)
...
private
FMouseInPos : Boolean;
procedure CMMouseEnter(var AMsg: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var AMsg: TMessage); message CM_MOUSELEAVE;
...
end;

implementation

procedure TYourObject.CMMouseEnter(var AMsg: TMessage);
begin
FMouseInPos := True;
Refresh;
end;

procedure TYourObject.CMMouseLeave(var AMsg: TMessage);
begin
FMouseInPos := False;
Refresh;
end;

...затем читать параметр FMouseInPos при прорисовке области компонента или использовать иное решение. [000185]