CAD菜单栏显示与隐藏(c++)

显示或隐藏接口


C++接口: MxDraw::ShowMenuBar


菜单栏文件


CAD控件MxDraw52.dll所在目录下,所有的mnu文件,都是 菜单定义文件 ,它是文本文件,用记事本打开编辑,格式如下:


文件中第一行是菜单文件头,每列内容如下 :


文件类型字符串 资源文件名(后面菜单的图标默认从该dll中加载) 图标的透明颜色 位置 菜单名 是否可以浮动,Y \N
"MxDrawMenuBarFile" "MxDraw.dll" (214 211 206) "top" "主菜单" "Y"


扫描二维码关注公众号,回复: 6624462 查看本文章

“//”是文件中的注释

文件中后面每行代表一个菜单项

"POPMENUS" "文件(&F)",表示一个弹出菜单开始

"POPMENUE" 表示弹出菜单的结束


后面每列的内容如下:


命令名称 点击执行的命令 图标索引字符串 资源文件名 命令提示字符串 "命令ID" ID类型(目前控件内部使用,一般为空)
"新建(&N)" Mx_New "IDB_NEW_BITMAP" "" "" "1" ""


命令名称:


新建(&N)。


点击执行的命令:


C++使用acedRegCmds->addCommand注册命令。


图标索引字符串:


IDB_NEW_BITMAP。


资源文件名:


1.  为空取默认资源文件名,该名称需要去掉控件版本号如:MxDraw52.dll写成MxDraw.dll,控件会根据具体情况加上这个版本号。

2.  资源文件如是local:开头,表示是一个本地bmp文件,如:取mytoolbar.bmp做工具按钮图标:local:mytoolbar.bmp

     比如:菜单图标从本地bmp文件加载:

     "自定义新建(&N)" "Mx_New" "IDB_NEW_BITMAP" "local:mytoolbar.bmp"

3.  资源文件如是web:开头,表示是一个网络服务器上的bmp文件,如:取mytoolbar.bmp做工具按钮图标: web:mytoolbar.bmp

      比如:菜单图标从服务器bmp文件加载,bmp文件与菜单文件在同一个服务器目录中:

      "自定义新建(&N)" "Mx_New" "IDB_NEW_BITMAP" "web:mytoolbar.bmp"


命令提示字符串:


为空。


命令ID:


指定菜单点击后响应的命令事件id,如不为空,可以在控件的命令执行事件中响应菜单点击事件: ImplementCommandEvent。


ID类型:


目前CAD控件内部使用,一般为空。


比如:菜单图标从本地bmp文件加载:


"自定义新建(&N)" "Mx_New" "IDB_NEW_BITMAP" "local:mytoolbar.bmp"


比如:菜单图标从服务器bmp文件加载,bmp文件与菜单文件在同一个服务器目录中:


"自定义新建(&N)" "Mx_New" "IDB_NEW_BITMAP" "web:mytoolbar.bmp"


从指定菜单文件加载


C++接口: MXDRAWOCXHANDLE MxDraw::CreateMxDraw第五个参数表示菜单加载文件


重新从文件加载菜单接口:


C++ MxDraw::ReLoadMenu


禁用或启用菜单项


C++接口函数: MxDraw::EnableMenuBarControl


MxDraw::EnableMenuBarControl方法


激活或禁用菜单项奖条上的按钮,说明如下:


参数 说明
MXDRAWOCXHANDLE hOcx

控件窗口句柄

LPCTSTR pszControlName

按钮的名称,在工具条定义文件(扩展名为mxt)第一列就是按钮名称

BOOL isEnable = TRUE

是否激活,传false禁用工具


显示或隐藏菜单项


C++接口 MxDraw:: HideMenuBarControl



右键弹出菜单


CAD控件支持鼠标右键弹出菜单,菜单的文件格式和前面的主菜单文件格式一样。


弹出函数C++接口 MxDraw::TrackPopupMenu

猜你喜欢

转载自www.cnblogs.com/yzy0224/p/11088275.html