lxspine 发表于 2007-3-25 21:02:00

[请问]如何取消DockControlBar的右键菜单?

<p>在AutoCAD2004+ObjectARX2004环境下,使用DockControlBar建立了一个停靠的工具栏,上面显示一个自定义的对话框,其中有一个Treelist控件。我已经给Treelist定义了右键菜单,但是每次点击右键并选择自己的菜单之后,AutoCAD自定义的菜单:“允许固定”“隐藏”还是会跳出来,请问如何关闭它?</p><p>谢谢!</p>

lxspine 发表于 2007-3-26 21:48:00

<p>自己解决了:</p><p>继承CAdUiDockControlBar类,重载AddCustomMenuItems函数如下:</p><p>BOOL CMyDockBar::AddCustomMenuItems(LPARAM hMenu)<br/>{<br/>&nbsp;HMENU hPopMenu;<br/>&nbsp;hPopMenu = (HMENU)(hMenu &amp; 0xffff);<br/>&nbsp;CMenu* pop_menu = CMenu::FromHandle(hPopMenu);</p><p>&nbsp;// 去掉弹出菜单上默认的<br/>&nbsp;pop_menu-&gt;RemoveMenu(ID_ADUI_HIDEBAR, MF_BYCOMMAND);<br/>&nbsp;pop_menu-&gt;RemoveMenu(ID_ADUI_ALLOWDOCK, MF_BYCOMMAND);<br/>&nbsp;return true;<br/>}</p><p></p><p>就行了</p>

sddzcsd 发表于 2011-12-2 16:25:58

非常感谢,我来挖坟盗墓了
页: [1]
查看完整版本: [请问]如何取消DockControlBar的右键菜单?