返回介绍

工具栏

发布于 2023-08-09 23:10:33 字数 19615 浏览 0 评论 0 收藏 0

1、显示或隐藏接口

(1)显示或隐藏所有工具条:

COM接口ocx的属性, ShowToolBars

(2)显示或隐藏指定工具条, 工具条名称会在后面的工具条文件格式中说明。

COM接口_DMxDrawX::ShowToolBar

(3)_DMxDrawX::ShowToolBar

显示隐藏工具条,详细说明如下:

参数说明

BSTR pszToolBarName

工具条文字名

VARIANT_BOOL isShow

是否显示工具条

首先定义一个全局变量isShow,接下来的例子中会用到该变量,如下:

bool isShow = false;

控件界面工具栏的显示或隐藏,C#代码实现如下:

//隐藏/显示工具栏
private void HideToolbar()
{
    axMxDrawX1.ShowToolBar("常用工具", isShow);
    axMxDrawX1.ShowToolBar("绘图工具", isShow);
    axMxDrawX1.ShowToolBar("编辑工具", isShow);
    axMxDrawX1.ShowToolBar("特性", isShow);
    axMxDrawX1.ShowToolBar("ET工具", isShow);
 
    isShow = !isShow;
}

设计窗口时也可在属性栏中修改ShowToolBar的值,如下图所示:

toolbars.png

当值为True时,如下图:

showtoolbar.png

当值为False时,如下图:

hidetoolbar.png

2、隐藏或显示工具条上的按钮

主要用到函数说明:

(1)_DMxDrawX::HideToolBarControl

隐藏或显示工具条上的按钮,成功返回TRUE。详细说明如下:

参数说明

BSTR pszToolBarName

工具条名称

BSTR pszControlName

按钮名称,多个按钮名称,可以用逗号分隔开,为空,隐藏或显示所有按钮

VARIANT_BOOL isHide

是否隐藏按钮

VARIANT_BOOL isAutoRecalcLayout

是否自动重新布局窗口上的工具条

例如隐藏绘图工具栏上的绘线和绘矩形框按钮c#中实现代码说明:

 axMxDrawX1.HideToolBarControl("绘图工具","绘线,绘矩形框",true,true);

隐藏前:

hidebeforetoolbar.png

隐藏后:

hideaftertoolbar.png

(2)MxDrawXCustomFunction::Mx_HideToolBarControl

隐藏或显示工具条上的按钮,成功返回TRUE。详细说明如下:

参数说明

IN LPCTSTR pszToolBarName

工具条名称

IN LPCTSTR pszControlName = NdivL

按钮名称,多个按钮名称,可以用逗号分隔开,为空,隐藏或显示所有按钮

IN BOOL isHide = TRUE

是否隐藏按钮

IN BOOL isAutoRecalcLayout = TRUE

是否自动重新布局窗口上的工具条

例如隐藏常用工具栏上的保存,保存为mxg文件,另存为dwg文件按钮c#中实现代码说明:

MxDrawResbuf param = new MxDrawResbuf();
param.AddString("常用工具");
param.AddString("保存,保存为mxg文件,另存为dwg文件");
axMxDrawX1.CallEx("Mx_HideToolBarControl", param);

隐藏前:

hidebeforetoolbar1.png

隐藏后:

hideaftertoolbar1.png

3、禁用或激活控件工具条上的某个命令按钮

主要用到函数说明:

_DMxDrawX::EnableToolBarButton

禁用或激活控件工具条上的某个命令按钮。详细说明如下:

参数说明

BSTR pButtonName

工具条中的按钮名称

VARIANT_BOOL isEnable

是否禁用

例如页中禁用打开按钮代码:

 axMxDrawX1.EnableToolBarButton("打开dwg文件", false);

禁用前:

enabletoolbar1.png

禁用后:

enabletoolbar2.png

4、工具条文件

视频如下:

控件MxDraw52.dll所在目录下,所有的mxt都是工具条定义文件,每个mxt文件就是一个工具条, 如下:

文件名说明
MxDraw-ToolBar.mxt常用工具条
MxDraw-ToolBar-Draw.mxt绘图工具条
MxDraw-ToolBar-DrawParam.mxt特性工具条
MxDraw-ToolBar-Edit.mxt编辑工具条
MxDraw-ToolBar-ET.mxt扩展工具条

把不需要的工具条文件删除,控件加载时就不会显示该工具条。

它是文本文件,用记事本打开编辑,格式如下:

“//”是文件中的注释。

文件中第一行是工具条文件头信息,每列内容如下:

如:("MxDrawToolBarFile" "MxDraw.dll" (214 211 206) "top" "常用工具" "Y")

第几列例程中的内容说明
1"MxDrawToolBarFile"工具条文件标志字符串
2"MxDraw.dll"工具条中按钮图片资源加载文件 注:后面图标默认从该dll中加载
3"(214 211 206)"在资源文件中,按钮图片的透明色
4"top"位置,可以是:top,left,bottom,right
5"常用工具"工具条名称 注:显示\隐藏函数会使用
6"Y"是否可以浮动,Y \N

文件中后面每行代表一个工具条按钮。

每列的内容如下:

如:("打开网上dwg文件" "打开网上dwg文件" "_OpenWebDwg" "IDB_OPENWEBDWG_BITMAP" "" "" "" "Y")

命令名称命令提示字符串命令名控钮在资源文件中的位图IDID类型资源文件名命令ID没有命定义时,是否不要加载工具按钮
打开网上dwg文件打开网上dwg文件_OpenWebDwgIDB_OPENWEBDWG_BITMAP"""""""Y"

命令名称:

"打开网上dwg文件"。

命令提示字符串:

"打开网上dwg文件"。

命令名:

COM接口:DMxDrawX::RegistUserCustomCommand注册命令

控钮在资源文件中的位图ID:

" IDB_OPENWEBDWG_BITMAP "。

ID类型:

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

资源文件名:

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

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

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

命令ID:

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

没有命定义时,是否不要加载工具按钮:

"Y"

自定义按钮参考例子:samples\AspNet\AspNet\My-MxDraw-ToolBar.txt。

比如:按钮图标从本地bmp文件加载:

("自定义打文件按钮" "自定义打文件按钮" "Mx_OpenMxg" "" "" "local:mytoolbar.bmp")

比如:按钮图标从服务器bmp文件加载,bmp文件与工具条文件在同一个服务器目录中:

("自定义打文件按钮" "自定义打文件按钮" "Mx_OpenMxg" "" "" "web:mytoolbar.bmp")

5、从指定文件加载

CAD控件默认是加载CAD控件程所在目录下的所有mxt文件,下面介绍如何显示指定加载工具文件。

COM接口: ToolBarFiles属性,它支持从服务器上加载工具文件,多个工具条文件用逗号隔开

帮助如下图:

iface1.png

6、显示加载工具条文件

CAD控件支持在需要时,再动态加载工具条文件,接口说明如下:

COM接口: _DMxDrawX::LoadToolBar

帮助文件抓图:

iface2.png

7、在工具条添加一个按钮

修改MxDraw52\Bin\vc100目录下的MxDraw-ToolBar.mxt文件:

L%XVY98]%IJ)ED~3~NWJS{N.png

// 如下,是从工具条所在本地目录的bmp加载,local:表示是个本地的bmp
("自定义打文件按钮" "自定义打文件按钮" "Mx_OpenMxg" "" "" "local:mytoolbar.bmp")
("自定义打文件按钮" "自定义打文件按钮" "Mx_OpenMxg" "" "" "local:mytoolbar.bmp")

改成:

// 如下,是从工具条所在网络目录的bmp加载,web:表示是网上加载
("自定义打文件按钮" "自定义打文件按钮" "Mx_OpenMxg" "" "" "web:mytoolbar.bmp")
("自定义打文件按钮" "自定义打文件按钮" "" "" "" "local:mytoolbar.bmp" "100")

效果如下,多了两个按钮了,用户可以给增加的按钮添加自定义命令。

toolbarb.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文