和书上一样的处理MouseLeave事件的代码总是没反应!...type
  TMyBtn2 = class(TCustomControl)
  private
    FOnMouseLeave: TNotifyEvent;
    procedure WMMouseLeave(var Msg: TMessage); message WM_MOUSELEAVE;        
  published
    property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;    
  end;...procedure TMyBtn2.WMMouseLeave(var Msg: TMessage);
begin
  inherited;
  if Assigned(FOnMouseLeave) then FOnMouseLeave(Self);
end;...

解决方案 »

  1.   

    //CM_MOUSELEAVE
    type
      TMyBtn2 = class(TCustomControl)
      private
        FOnMouseLeave: TNotifyEvent;
        procedure CMMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;        
      published
        property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;    
      end;...procedure TMyBtn2.CMMouseLeave(var Msg: TMessage);
    begin
      inherited;
      if Assigned(FOnMouseLeave) then FOnMouseLeave(Self);
    end;...