Need to detect dialog menu being displayed AND disappearing
My app (optionally) hides itself after a set time.
It has a control panal (a non-modal dialog).
When I click on the control panel menu, I need to detect it so I can
temporarily turn off the timer.
Then when the menu disappears, I again need to detect it so I can turn
the timer back on.
I also have a popup menu in the app, and the following code works:
void CMyDlgApp::OnRButtonDown(UINT nFlags, CPoint point)
{
bool OldbTimer = bTimer; // Save timer state
bTimer = false; // disable timer while menu is displayed
// Do Popup Menu
// ...
bTimer = OldbTimer; // Restore timer state
CDialog::OnRButtonDown( nFlags, point );
}
In CMyDlgApp OnRButtonDown() does not return until the popup menu is
completed or dismissed.
This doesn't work in the Control panel dialog, because it is not a
popup menu and the OnLButtonDown returns right away leaving the menu
for the user to click on.
Is there a WM_MENU_APPEARING, WM_MENU_FINISHED or equivalent, or
something like OnMenuFinished()?
TIA,
Harvey