读书人

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

发布时间: 2013-04-02 12:35:26 作者: rapoo

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();

读书人网 >C++

热点推荐