[ Predrag Damnjanovic @ 11.01.2004. 17:25 ] @
Imam iritirajuci problem sa WinAPI funkcijom SetCursor(). Na pocetku ucitam kurzor: hCursor1 = LoadCursor (hInst, MAKEINTRESOURCE(CURSOR_ID1)); i, dok se mis pomera, pozivam: SetCursor (hCursor1); Medjutim, problem je sto Windows pri svakom pomeranju misa, vrati standardni kurzor (stelica), pa onda moj sors ponovo vrati moj kurzor, i tako kurzor treperi :( Zapravo, kao da Windows ima neki clock, pa ako ne set-ujes kurzor dovoljno brzo - on vrati standardni kurzor. Na brzim kompjuterima jedva da se vidi da treperi - jer program stigne da set-uje kurzor pre nego sto Windows to uradi, ali na starim kompjuterima bas treperi :( Da li je normalno to sto Windows vraca standardni kurzor? U pitanju je FLTK aplikacija, i moguce je da FLTK vraca standardni kurzor, ali ovo nisam siguran, ne verujem da je FLTK krivac, mada, sve je moguce... U Win32-SDK sam nasao ovo: If your application must set the cursor while it is in a window, make sure the class cursor for the specified window's class is set to NULL. If the class cursor is not NULL, the system restores the class cursor each time the mouse is moved. Sta je cursor class? HCURSOR hCursor1 ? Sta je window's class? hInstance? ako stavim NULL umesto hInst: hCursor1 = LoadCursor (NULL, MAKEINTRESOURCE(CURSOR_ID1)); kurzor se uopste ne ucita, nema ga... Mozda ja na pogresan nacin set-ujem kurzor. Sta radi funkcija ShowCursor? Tamo se pominju neki counteri... Probao sam i sa tom funkcijom (mada je moguce da sam je probao na pogresan nacin) - nista se nije promenilo. Gledao sam FLTK sors, i FLTK koristi samo LoadCursor i SetCursor, na isti nacin na koji ga ja koristim. Cak sta vise - i kada koristim FLTK-ovu funkciju - kurzor isto hoce da zatreperi. Problem me izludjuje danima, kopam po dokumentaciji, sorsevima, isprobavam svasta... bezuspesno. Stvarno me stisla muka, nemam vise vreme za ovo, poslodavac ce me bije jos malo :) |