Советы по Delphi




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


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

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

TYourObject = class(TAnyControl)...privateFMouseInPos : 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);beginFMouseInPos := True;Refresh;end;
procedure TYourObject.CMMouseLeave(var AMsg: TMessage);beginFMouseInPos := False;Refresh;end;

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




Содержание  Назад  Вперед