凯得吧[CAD8.Net]

 找回密码
 注册会员

QQ登录

只需一步,快速开始

尊敬的会员:如您的密码仅为数字等简单密码,为帐号安全,请务必修改! 新会员请验证邮箱!升级后可发主题贴!
分享内容请勿对会员进行二次引导,附件有密码请务必在贴内说明,或使用本站默认密码:www.cad8.net
本站所有资料为会员上传仅供大家学习之用,商用请务必购买正版版权!有侵权之处,请联系管理员(QQ:119891935)删除!
查看: 64|回复: 0
收起左侧

CAD右键弹出菜单

[复制链接]
发表于 2019-8-5 11:07:41 | 显示全部楼层 |阅读模式 简体中文繁體中文
用QQ等截图工具截图后,点中发贴区直接按Ctrl+V键就可以将截图粘贴到发贴框.

欢迎加入,注册成为会员,享用更多功能,完全免费。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
CAD控件支持鼠标右键弹出菜单,菜单的文件格式和前面的主菜单文件格式一样。 详细参考例子,samples\ie\iedemoTest.htm。
COM接口 DMxDrawX::TrackPopupMenu
在B/S模式下,下面一步一步的说明如何支持该功能:

1、新建菜单定义文件

新一个文本文件: mxpop.mnu,内容如下:

定义一个菜单按钮,按钮名为MyMenuButtonName,图标是服务器上加载,图标名为mytoolbar.bmp,按钮点击执行命令,命令id为99。
  1. "MxDrawMenuBarFile" "MxDraw.dll" (214 211 206) "top" "主菜单" "Y"
  2. "POPMENUS" "文件(&F)"
  3. "MyMenuButtonName(&N)"  ""  ""  "web:mytoolbar.bmp"  "" "99"
  4. "POPMENUE"
复制代码
2、把文件上传到服务器

把mxpop.meu, mytoolbar.bmp文件放到服务器上,并放在同一个目录下,保证能直接从ie中访问。

3、响应鼠标右键事件,弹出菜单

菜单定义文件放在当前网页目录下。
  1. document.getElementById("MxDrawXCtrl").ImplementMouseEventFun = MouseEvent;
复制代码
  1. function MouseEvent(dX, dY, lType) {
  2. // 3表示鼠标右键按下   
  3. if(lType == 3)
  4. {
  5.         var  sPopMenu = mxOcx.GetOcxAppPath() + ".\\mxpop.mnu"
  6.         mxOcx.TrackPopupMenu(dX, dY, sPopMenu);
  7.         // 设置1,表示鼠标事件,不再往下传递.
  8.         mxOcx.SetEventRet(1);
  9. }
  10. }
复制代码
4、响应命令执行事件,如下:
  1. function DoCommandEventFunc(iCmd)
  2. {
  3.     if (iCmd == 99) {
  4.         //该函数在mxcustom.js中
  5.         alert("菜单按钮点击");
  6. }
  7. }
复制代码
  1. document.getElementById("MxDrawXCtrl").ImplementCommandEventFun = DoCommandEventFunc;
复制代码


您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

本站所有资料仅供大家学习之用,商用请务必购买正版版权!有侵权之处,请联系管理员(QQ:119891935)删除!
快速回复 返回顶部 返回列表