Re: How to destroy a MFC menu?
If your app is MDI, main menu of the app changes based on the active
doctemplate. Is that what you have(an MDI)?
--
Ajay
On Feb 2, 8:16 am, Kit <wkfung.e...@gmail.com> wrote:
I have a weird problem regarding to the MFC menu.
I had a Right-Click-Menu from my application, at the same time, my
application received an event which popup a Modal-Dialog. The Modal-
Dialog sits under the Right-Click-Menu and above the application
screen. It freeze my application (not until I hit an ESCAPE command to
destroy the Right-Click-Menu).
In order to have a work around solution, I implement the following
whenever the Modal-Dialog popup.
CWnd* pWnd = AfxGetApp()->GetMainWnd()->GetActiveWindow=
();
if(pWnd)
pWnd->SendMessage(WM_CHAR, VK_ESCAPE);
I tried this on my machine, and it won't work. But I the same code on
a different machine, it works fine once (the Right-Click-Menu is
gone), but the second time, it won't work again.
I am really frustrated with what to do, can anyone please help?
I also come across the msdn, with the following:
CWnd* pMain = AfxGetMainWnd();
if (pMain != NULL)
{
CMenu* pMenu = pMain->GetMenu();
if (pMenu != NULL && pMenu->GetMenuItem=
Count() > 0)
{
for ( int i=0; i<pMenu-=
GetMenuItemCount(); i++ )
{
if ( pMen=
u->GetSubMenu(i) != NULL ) {
=
pMenu->DeleteMenu(i, MF_BYPOSITION);
=
pMain->DrawMenuBar();
}
}
}
}
But I tried the code, and it still doesn't work. Can you guys please
guide me a bit?