首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

mfc 右键点击托盘图标弹出菜单有关问题

2013-04-02 
mfc 右键点击托盘图标弹出菜单问题RT,我右键点击右下角的图标弹出一个目录菜单,然后点击桌面任意地方,这个

mfc 右键点击托盘图标弹出菜单问题
    RT,我右键点击右下角的图标弹出一个目录菜单,然后点击桌面任意地方,这个菜单仍然存在。我想知道怎么做才能像正常的一样弹出目录菜单后,在桌面上任意点击一个位置菜单就消失,就像QQ那样的。代码如下:

if ( wParam = IDR_MAINFRAME )
{
switch( lParam )
{
case WM_LBUTTONDOWN:
this->ShowWindow(SW_NORMAL);
SetWindowPlacement(&m_wp);
break;
case WM_RBUTTONUP:
menu.LoadMenu(IDR_MENU2);
POINT pt;
::GetCursorPos(&pt);
menu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTALIGN, pt.x-10, pt.y-10, this);
menu.Detach();

break;

}
}


                                mfc                  menu              
[解决办法]
记得需要先调用SetForeGround类似的函数, 设置成前景窗口, 然后再弹出菜单, 否则得不到失去焦消失的的功能
[解决办法]
TrackPoppMenu前加上这句 SetForegroundWindow(); 

热点排行