在TrackPopupMenu函数前面添加SetForegroundWindow();即可解决. 示例代码: POINT point; HMENU hMenu, hSubMenu; GetCursorPos(&point); hMenu = LoadMenu(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MENU1)); hSubMenu = GetSubMenu(hMenu, 0); SetMenuDefaultItem(hSubMenu, -1, FALSE); SetForegroundWindow(); // 解决托盘图标菜单弹出后,点击其它地方,菜单不消失的问题 TrackPopupMenu(hSubMenu, TPM_BOTTOMALIGN, point.x, point.y, 0, m_hWnd, NULL); PostMessage(WM_NULL, 0, 0); DestroyMenu(hMenu);