有关菜单,操作MF_GRAYED之后,如何让它再变成正常状态?
//flag = TRUE :登录 flag = FALSE :注消
CMenu *pTopMenu = AfxGetMainWnd()->GetMenu();
UINT nCount = pTopMenu->GetMenuItemCount();
UINT style = flag ? MF_BYPOSITION|MF_ENABLED : MF_BYPOSITION|MF_DISABLED/*|MF_GRAYED*/;
for(UINT i = 0; i< nCount; i++)
{
pTopMenu->EnableMenuItem(i,style);
}
第一次时,flag = 0,正常执行,菜单变灰,不可用
登录时, flag = 1,菜单还是灰,但可执行,MOUSE MOVE上去时,即变正常颜色
[BLACK],也就是说上次的MF_GRAYED的作用还没消失。
这种情况如何处理?有没有让菜单Redraw的函数?