winapicursordirect3dnonclient

Cursor flashing on the non-client area when using IDirect3DDevice9::SetCursorProperties


I have an application running under Direct3D9. The application is using the Direct3D HW cursor API (IDirect3DDevice9::SetCursorProperties et al.) to control the cursor. Almost everything works fine:

The problem is with the non-client area of my window (the title bar, screen edges). When moving in the non-client area, the cursor corresponding to the function of the area is breifly shown, but once I stop moving, the cursor set in SetCursorProperties is shown again.

What is the correct way to use IDirect3DDevice9::SetCursorProperties so that I get the default OS cursors on my window non-client area?


Solution

  • After experimenting with various things, a following change in the application has solved the issue for me: