如何在TrackPopupMenu()中使用主菜单句柄

时间:2014-01-04 21:08:44

标签: winapi visual-c++

我最近正在阅读Petzold Charles编程Windows(第5版)的文章,在本书的p371中,它提到你可以通过使用主菜单(你创建如下所示)来显示弹出菜单。

MENUDEMO MENU DISCARDABLE
BEGIN
POPUP "&File"
   BEGIN
     MENUITEM "&New", IDM_FILE_NEW
   END
POPUP "&Edit"
  BEGIN
    MENUITEM "&Undo", IDM_EDIT_UNDO
  END
END

TrackPopupMenu需要一个弹出菜单句柄,而从上面的资源获取的句柄不是。但正如本书所说,您可以参考MS知识库Q99806来找到解决方法,了解如何解决这个问题。

我试图搜索那篇文章但却找不到(似乎多年来,微软已经移动了很多这样的文章)。如果有人有副本或知道解决方案,请你与我分享。感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

hBar=LoadMenu;
hPop=GetSubMenu(hBar,0);
RemoveMenu(hBar,0,MF_BYPOSITION);
TrackPopupMenuEx(hPop,...);