Есть класс, дочерний от CButton. Надо перехватывать наведение и уход мыши с кнопки. пишу так:
class CColorButton : public CButton
{
public:
CColorButton();
virtual ~CColorButton();
protected:
afx_msg void OnPaint();
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg LRESULT OnMouseLeave(WPARAM, LPARAM);
DECLARE_MESSAGE_MAP()
};
BEGIN_MESSAGE_MAP(CColorButton, CButton)
/* ON_WM_PAINT() */
ON_MESSAGE(WM_MOUSELEAVE, OnMouseLeave)
ON_WM_MOUSEMOVE()
END_MESSAGE_MAP()
void CColorButton::OnMouseMove(UINT nFlags, CPoint point)
{
this->SetWindowText("ddd");
TRACE("* Mouse move\n");
}
LRESULT CColorButton::OnMouseLeave(WPARAM, LPARAM)
{
this->SetWindowText("My Button");
TRACE("* Mouse leave\n");
return 0;
Mouse Move он перехватывает, а moseleave упорно не хочет...
Здравствуйте, SchweinDeBurg, Вы писали:
SDB>А где вызов TrackMouseEvent()?
просвятите, плиз... где и как надо его вызывать? я mfc еще плохо знаю
Здравствуйте, Lexasoft, Вы писали:
SDB>>А где вызов TrackMouseEvent()?
L>просвятите, плиз... где и как надо его вызывать? я mfc еще плохо знаю
Это не MFC, а голое API.

Там в описании функции все подробно написано...