菜单拖动的问题

kbsoft 2011-06-28 09:51:49
我用CMenu弹出TrackPopup了一个菜单,现在想从菜单之外的控件里,拖动一个Item到这个菜单中,现在拖动时可以显示出这个菜单,但拖动的鼠标箭头为禁止不可拖动状态,不知道这是怎么回事?如果是菜单内拖动,则没问题,因为菜单内拖动可以直接响应WM_MENUDRAG消息。如何从菜单之外拖动一个item呢?
...全文
92 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kbsoft 2011-06-28
  • 打赏
  • 举报
回复
kyotrue

求救啊
kbsoft 2011-06-28
  • 打赏
  • 举报
回复
噢,这个我不太懂,能不能有什么方法可以规避掉呢?或者一个临时的方案也行。
如果自己绘制菜单,工作量比较大,求高手指点啊
kyotrue 2011-06-28
  • 打赏
  • 举报
回复
反正有个原则就是,item来源处的窗口的线程,不能是调用TrackPopup的
kbsoft 2011-06-28
  • 打赏
  • 举报
回复
但拖拽时,如果从菜单之外拖动一个item到这个菜单,如果这个菜单里有子菜单时,鼠标状态是可以拖动的图标,为何呢?如果没有子菜单就不能拖动了。
kyotrue 2011-06-28
  • 打赏
  • 举报
回复
TrackPopup弹出的菜单恐怕不行吧,这个和模态对话框一样阻塞了原有窗口的消息处理的,无法响应你的拖动动作啊。要不你就用普通窗口自己画菜单咯
kbsoft 2011-06-28
  • 打赏
  • 举报
回复
已经继承自IDropTarget了,并且实现了相关4个操作,以及返回了DROPEFFECT_MOVE

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧