Перехват наведения и ухода указателя мыши
От: Lexasoft  
Дата: 15.09.04 12:49
Оценка:
Есть класс, дочерний от 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 упорно не хочет...
Re: Перехват наведения и ухода указателя мыши
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 15.09.04 13:00
Оценка:
Здравствуйте, Lexasoft, Вы писали:

L>Mouse Move он перехватывает, а moseleave упорно не хочет...


А где вызов TrackMouseEvent()?
- Искренне ваш, Поросенок Пафнутий
Re[2]: Перехват наведения и ухода указателя мыши
От: Lexasoft  
Дата: 15.09.04 13:13
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>А где вызов TrackMouseEvent()?


просвятите, плиз... где и как надо его вызывать? я mfc еще плохо знаю
Re[3]: Перехват наведения и ухода указателя мыши
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 15.09.04 13:22
Оценка:
Здравствуйте, Lexasoft, Вы писали:

SDB>>А где вызов TrackMouseEvent()?


L>просвятите, плиз... где и как надо его вызывать? я mfc еще плохо знаю


Это не MFC, а голое API. Там в описании функции все подробно написано...
- Искренне ваш, Поросенок Пафнутий
Re[4]: Перехват наведения и ухода указателя мыши
От: Lexasoft  
Дата: 15.09.04 13:38
Оценка:
SDB>Это не MFC, а голое API. Там в описании функции все подробно написано...

приведите, пожалуйста, простенький пример ) а то в мсдн написано так, как будто это Билл с перепою писал
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.