- MxDraw 云图
- 快速入门
- 前端 mxdraw 和 mxcad 库预览编辑图纸
- 后台使用 Node.js 调用梦想 API
- CAD 与 GIS 集成说明
- 梦想云图 Node.JS 服务
- iOS 开发
- 安卓开发
- 网页 CAD 开发
- 网页快速入门 aspaps.netphpjava
- 图形数据库
- 参数化绘图
- 交互绘图
- 选择集
- 扩展数据
- 自定义实体
- 自定义命令
- 光栅图处理
- 图面搜索
- 控件事件
- 打印控制
- 界面控制
- COM 开发
- 视频教程
- VB 快速入门
- Delphi 快速入门
- CSharp 快速入门
- java 快速入门
- QT 快速入门
- 易语言快速入门
- Powerbuilder 快速入门
- wpf 控件入门
- 图形数据库
- 参数化绘图
- 交互绘图
- 选择集
- 扩展数据
- 自定义命令
- 自定义实体
- 打印控制
- 控件事件
- 图面搜索
- 光栅图处理
- 界面控制
- C++ 开发
- C++ bulider 快速入门
- C++ 快速入门(VS2010)
- C++ 快速入门(com 接口)
- 图纸数据库
- 参数化绘图
- 交互绘图
- 选择集
- 扩展程序
- 扩展数据
- 自定义函数
- 自定义实体
- 光栅图处理
- 图面搜索
- 控件事件
- 界面控制
- 常见问题
- 试用技术服务申请
- 会员下载最新程序
- 备用下载
- 控件安装运行说明
- 控件最新更新
- 控件功能简介
- 控件图形数据库
- 控件界面控制
- 控件命令执行原理
- 控件系统变量说明
- 控件常见问题说明
- 修改对象属性
- 网页加载 CAD 图纸的两个方案
- MxDraw3D 控件
- 前端基础工程化知识
在网页中引用控件
从我们网站首页下载 最新安装包,安装包大概有150M,是个rar自解压文件,里面包括了所有帮助文件、和所有语言调用的运行例子,最终用户使用发布包只有16M。界面如下:
下载CAD控件开发包,下载成功后安装文件如下:
下载的文件是一个压缩文件,双击解压之后,以管理员身份运行“ RegMxDrawX.bat
”注册CAD控件到系统中,如果注册失败请退出360等杀毒软件,再运行RegMxDrawX.bat。界面如下:
控件注册成功后,会弹出注册成功弹框。界面如下:
控件是个ocx,Id为 74A777F8-7A8F-4e7c-AF47-7074828086E2
Html中引用控件需要添加代码如下:
<SCRIPT language="JavaScript"> document.oncontextmenu = new Function('event.returnValue=false;'); //禁用右键 function LoadMxDrawX(id,dwgfile,cabpath,msipath) { var s, classid, Sys = {}, ua = navigator.userAgent.toLowerCase(); (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/trident\/([\d.]+)/)) ? Sys.ie9 = s[1] : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] : (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] : (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0, classid = "74A777F8-7A8F-4e7c-AF47-7074828086E2", Sys.ie || Sys.ie9 ? (document.write("<!-- 用来产生编辑状态的ActiveX控件的JS脚本--> "), document.write("<!-- 因为微软的ActiveX新机制,需要一个外部引入的js--> "), document.write('<object id="'+ id + '" classid="clsid:' + classid + '" '), //document.write('width="85%" height="85%" align="left"> '), document.write('codebase=" ' + cabpath + 'width="85%" height="85%" align="left"> '), document.write('<param name="_Version" value="65536"> '), document.write('<param name="_ExtentX" value="24262"> '), document.write('<param name="_ExtentY" value="16219"> '), document.write('<param name="_StockProps" value="0">'), document.write('<param name="DwgFilePath" value="' + dwgfile + '" > '), document.write('<param name="IsRuningAtIE" value="1">'), document.write('<param name="EnablePrintCmd" value="1"> '), document.write('<param name="ShowCommandWindow" value="1"> '), document.write('<param name="ShowToolBars" value="1"> '), document.write('<param name="ShowModelBar" value="1">'), document.write('<param name="Iniset" value=""> '), document.write('<param name="ToolBarFiles" value="">'), document.write('<param name="ShowMenuBar" value="1">'), document.write('<param name="EnableUndo" value="1">'), document.write('<param name="ShowPropertyWindow" value="1">'), document.write('<SPAN STYLE="color:red">不能装载文档控件。请在检查浏览器的选项中检查浏览器的安全设置。请点击<a href=' + msipath + '>安装控件</a></SPAN>'), document.write('</object>')) : Sys.chrome ? (document.write('<object id="' + id + '" clsid="{' + classid + '}" '), document.write('type="application/mxdraw-activex" width="85%" height="85%" align="left"> '), document.write('<param name="_Version" value="65536"> '), document.write('<param name="_ExtentX" value="24262"> '), document.write('<param name="_ExtentY" value="16219"> '), document.write('<param name="_StockProps" value="0">'), document.write('<param name="DwgFilePath" value="' + dwgfile + '" > '), document.write('<param name="IsRuningAtIE" value="1">'), document.write('<param name="EnablePrintCmd" value="1"> '), document.write('<param name="ShowCommandWindow" value="1"> '), document.write('<param name="ShowToolBars" value="1"> '), document.write('<param name="ShowModelBar" value="1">'), document.write('<param name="Iniset" value=""> '), document.write('<param name="ToolBarFiles" value="">'), document.write('<param name="ShowMenuBar" value="1">'), document.write('<param name="EnableUndo" value="1">'), document.write('<param name="ShowPropertyWindow" value="1">'), document.write('<param name="Event_ImplementCommandEvent" value="DoCommandEventFunc">'), document.write('<SPAN STYLE="color:red">不能装载文档控件,谷歌浏览器使用,下载MxChrome安装包到本地,安装后点击桌面 Chrome企业版 快捷方式启动。请点击<a href=' + msipath + '>安装控件</a></SPAN>'), document.write('</object>')) : Sys.firefox ? (document.write("<!-- 需要安装ieTab插件才能使用--> "), document.write("<!-- 右键弹出菜单,点击使用ieTab浏览> --> "), document.write('<div class="no_title"> 不能装载文档控件。1.请在安装ieTab插件,2.然后请点击<a href=' + msipath + '>安装控件</a>, 3.然后右键弹出菜单,点击使用ieTab浏览 </div> ') ) : Sys.opera ? alert("sorry,ntko 暂时不支持opera!") : Sys.safari && alert("sorry,ntko 暂时不支持safari!"); } function isFireFox() { var s, classid, Sys = {}, ua = navigator.userAgent.toLowerCase(); (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/trident\/([\d.]+)/)) ? Sys.ie9 = s[1] : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] : (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] : (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0; return Sys.firefox; } </SCRIPT>
使用参考例子 samples\ie
引用CAD控件添加代码如下:
<script type="text/javascript"> LoadMxDrawX("MxDrawXCtrl", "", "http://www.mxdraw.com/MxDrawX52.CAB#version=8.0.0.1", "https://download.mxdraw3d.com:2083/MxChromex86Setup.exe");</script> <script>
标记中各个部分的含义如下:
id=" MxDrawXCtrl "标识控件的JavaScript编程标识,通过document.all("MxDrawXCtrl ")即可得到对控件对象的引用。
clsid: 74A777F8-7A8F-4e7c-AF47-7074828086E2 标识控件的唯一标识。浏览器通过这个clsid来判断访问网页的客户机是否已经安装控件。
codebase="https://demo.mxdraw3d.com:3562/MxDrawX52.CAB#version=4.0.0.1"
在网页上自动安装CAB包,https://demo.mxdraw3d.com:3562/MxDrawX52.CAB是CAB包在服务器上的位置。version=4.0.0.1是控件版本号,如果这个版本号取的比文件属性中版本号低,则不会在ie中自动下载提示更新安装,如果比文件属性中的版本号高,则会总是提示更新安装。
这个版本号可以查看 mxdrawx.ocx
文件的属性得到,最新版已经升级到version=9.0.0.1,界面如下:
参考例子目录:
src\MxDraw5.2\sample\ie
src\MxDraw5.2\sample\ie\iedemoTest.htm
src\MxDraw5.2\sample\JavaScript
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论