W jaki sposób mogę dobrać się do kształtu kursora gdy jest on nad innym oknem (nie należącym do mojej aplikacji) lub nad pulpitem?? getCursor() nie specjalnie chce działać, Delfowe screen.cursor też nie. Może jakaś mała podpowiedz?:)
Z góry dzięki
Poszukaj o
SetCursor - ładuje nowy wygląd kursora
i
ShowCursor - pokazuje kursor
SetCursor( LoadCursor( NULL, IDC_WAIT ) ); // kursorek klepsydry
ShowCursor( TRUE );
Może to pomoże :)
Może nieprecyzyjnie się wypowiedziałem: chcę pobrać aktualny kształt kursora. Troche pogrzebałem o różnych metodach, ale wszystkie zawodzą gdy kursor wychodzi poza okno mojej aplikacji.
:) nie zaczaiłem
W tak razie jedyne co przychodzi mi do głowy to subclassing, czyli przejmowanie procedury jakiegoś okna. Tutaj jest co nie co na ten temat :
http://www.winapi.org/index.php?option=com_content&task=view&id=90&Itemid=33
http://www.i-lo.tarnow.pl/edu/inf/prg/win32asm/pages/20.htm
Może się też przydać ten opis kursorów po to by przechwytywać komunikaty danego okna :
http://www.kompediumwinapi.webpark.pl/l_mysz.html
Na tą chwilę tylko tak mogę pomóc. Jutro jak będę miał chwilkę to postaram się napisać coś więcej.
Pozdrawiam.
Tylko że wygląd kursora nie ma nic wspólnego z pętlą komunikatów.
Odszukaj uchwyt okna, z którego interesuje cię kursor funkcją FindWindow lub czymś podobnym.
Później GetClassLong(uchwyt, GCL_HCURSOR) zwróci ci uchwyt do kursora.
O tym, co z takim uchwytem można zrobić przeczytasz tu: http://msdn2.microsoft.com/en-us/library/ms646970.aspx
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.