If I dont make a prior call to OverrideCursor(), CursorImage() is called so thats now ok.
I need a way to only change the cursor to an arrow when within class CMsgBoxW window so the user is not confused by a wait cursor, while continuing to show a wait cursor (if set) within the main app window and its controls.
This is to handle e.g. the following scenario:
1) The app Init() function is a thread that sets the cursor to wait at the start and sets the cursor to arrow when it ends.
2) That thread encounters an error that must be reported (using a CMsgBoxW window) to the user who must click the OK button to close the CMsgBoxW window.
3) The CMsgBoxW is modeless and the user may close either before or after the Init() thread completes and sets the cursor to arrow.
How may I show the wait cursor while the mouse is within the app main window, its tabs and controls, and the arrow cursor when the mouse is within the messagebox window?
(PromptOK also suffer from showing a wait cursor - which is confusing to a user - when OverrideCursor() has been called.)
Some way of overriding the "overidden" cursor in only the CMsgBoxW class would seem to be the simplest way.
TIA.
Jan
My bet is that in your main thread, message queue is not being processed (e.g. by Ctrl::ProcessEvents).