Zmiana kursora

0

Witam,

mam problem w MFC z kursorem. Chciałem żeby kursor po naciśnięciu myszki zmienił się w coś innego i po zwolnieniu przycisku odmienił się. Zatem dodaje zdarzenie na przyciśnięcie lewego przycisku myszki i wrzucam taką funkcję:
SetCursor( LoadCursor( NULL, IDC_SIZEALL ) );
Kursor się oczywiście zmienia, jednak gdy poruszę myszką (dalej z wciśniętym przyciskiem myszki) to nagle odmienia się do pierwotnego stanu. Dlaczego?

Pozdrawiam i dziękuję z góry za pomoc.

0

Ponieważ, jak sam powiedziałeś - dodajesz zdarzenie na przyciśnięcie. Musiałbyś poszukać po innych zdarzeniach.

0

@Patryk27: nie prawda, zmiana kursora po prostu działa w obrębie tylko jednego komunikatu, później jest przywracany domyślny.
@nwnuinr: tu masz przykład jak to zrobić: http://www.functionx.com/visualc/howto/changecursor.htm - SetCursor sam z siebie nie spełnia swojego zadania.
Tu jest przedstawione jeszcze trochę inne podejście: http://support.microsoft.com/kb/131991
Taki urok MFC, że jest poryte

0

// edit odpisałeś jak ja pisałem posta, ale dzięki byku

to jest zdarzenie WM_MBUTTONDOWN, które się wywołuje w momencie przyciśnięcia przycisku (w tym przypadku środkowego myszki), jest także zdarzenie WM_MBUTTONUP, które się wywołuje po "odciśnięciu" oraz WM_MOUSEMOVE przy poruszeniu myszki, więc skoro nic nie robię przy obsłudze WM_MBUTTONUP i WM_MOUSEMOVE to jakim cudem zmienia mi się kursor do pierwotnego stanu po poruszeniu myszką?

1 użytkowników online, w tym zalogowanych: 0, gości: 1