有如下操作:
点击菜单, 然后执行某个函数我想从函数中得到那个菜单的ID(以便重启程序后调用), 如果通过遍历所有菜单用菜单名来判断程序在本地化时会出现问题. 有没有较好的办法?

解决方案 »

  1.   

    UINT GetMenuItemID(          HMENU hMenu,
        int nPos
    );
      

  2.   

    你响应菜单消息的时候,怎么可能不知道ID?如果是通过WM_COMMAND的,不就要根据ID来调用相应的功能?如果是MFC中的菜单响应函数,还不是和菜单ID一一对应的?不知道你怎么想的。
      

  3.   

    点击菜单, 然后执行某个函数点击菜单项会触发WM_COMMAND消息并传入该菜单项的ID值, 程序处理WM_COMMAND中时,根据该ID才会调用你的这个函数
    你把ID作为一个参数传过去就可以了
      

  4.   

    是这样的, 主程序我们是无法得到的, 我的命令只是一个插件, 命令对应的菜单是运行时建立的,而且菜单的个数不确定, 所以
    UINT GetMenuItemID(          HMENU hMenu,
        int nPos
    ); 也是不行的