Mouse Enter/Leave messages not working?

custom-controls, delphi, delphi-xe2, mouseevent, windows-messages

Solution

I figured out my issue: I'm also using `WM_NCHITTEST`, where I was NOT passing `inherited;`. I added this, and now it works fine.

Problem

I'm trying to detect mouse enter/leave messages `CM_MOUSEENTER` and `CM_MOUSELEAVE` but it isn't catching it. What am I doing wrong here? ``` type TMyControl = class(TCustomControl) private procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER; procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE; procedure WMNCHitTest(var Message: TWMNCHitTest); message WM_NCHITTEST; end; procedure TMyControl.CMMouseEnter(var Message: TMessage); begin //Handle mouse entering //Breakpoint never reached, procedure never called end; procedure TMyControl.CMMouseLeave(var Message: TMessage); begin //Handle mouse leaving //Breakpoint never reached, procedure never called end; procedure TMyControl.WMNCHitTest(var Message: TWMNCHitTest); var Ch: Bool; begin if csDesigning in ComponentState then Message.Result := HTCLIENT else begin Ch:= False; //Do checks and pass `Ch:= True;` if something changed... if Ch then Invalidate; end; end; ```

Original source