小弟在列表视图中加入了对上下文菜单的支持,现在上下文菜单可以正常弹出,但是在弹出之前却没有调用菜单项的命令界面消息处理函数,但我明明已经映射了这个菜单项的消息,这是为什么呀?

解决方案 »

  1.   

    就是在OnContextMenu()中使用TrackPopupMenu弹出的上下文菜单,使用ON_UPDATE_COMMAND_UI映射宏映射了菜单项的更新命令界面消息到一个定义好的消息处理函数中进行处理,可是系统没有在弹出菜单时调用这个消息处理函数,而是在单击了菜单项时才调用它和命令消息处理函数。
      

  2.   

    我只知道TrackPopupMenu的最后一个参数必须为映射ON_UPDATE_COMMAND_UI的那个类的指针...其它的不清楚..
      

  3.   

    好象和TrackPopupMenu没有关系,我使用了要接受消息的视图的指针,它也确实可以响应ON_COMMAND映射的消息,只是界面没有在正确的时机被调用。