c++快速入门(com接口)
http://www.mxdraw.com/help_3_20100.html
CAD网页版快速入门(asp aps.net php java)
http://www.mxdraw.com/help_5_20101.html
VB快速入门
http://www.mxdraw.com/help_4_20102.html
Delphi快速入门
http://www.mxdraw.com/help_4_20103.html
CSharp快速入门
http://www.mxdraw.com/help_4_20104.html
C++bulider快速入门
http://www.mxdraw.com/help_3_20105.html
java快速入门
http://www.mxdraw.com/help_4_20106.html
QT快速入门
http://www.mxdraw.com/help_4_20107.html
易语言快速入门
http://www.mxdraw.com/help_4_20108.html
Powerbuilder快速入门
运行CAD控件安装包(自解压程序),此演示使用VC2010语言开发,如果想在除VC2010外的其他语言(如C#、VB...)、网页、或C++其他版本下使用,则需要使用控件的ActiveX版。
点击运行VS2017,启动后点击 左上角【文件(F)】->【新建(N)】->【项目(P)】,若正确安装VS将显示如下界面:

可在 名称(N) 文本框内键输入项目名字,在 位置(L) 文本框内选择 控件下的sample目录:MxDraw52\Src\MxDraw5.2\samples,如下:

MxDraw52\Src\MxDraw5.2\samples,点击确定按钮,选择“ 基于对话框 ”。如下所示:

打开工程,点工程属性窗口,在属性窗口中, 将设置平台工具集为“ Visual Studio 2010 (v100) ”,字符集为“ 使用 Unicode 字符集 ”。根据需求设置输出目录到控件 \Bin\vc100x64d 目录下,在此实例中我们输出到DEBUG/ 64 版。或将生成的EXE拷贝至上述目录下,亦可将上述目录下的环境文件拷贝至EXE所在目录下。如下所示:

设置包含目录为控件 \Src\MxDraw5.2\MxInc ; 设置库目录为控件 \Src\MxDraw5.2\libvc100 。
如下所示:

或者打开控件sample目录下的Edit工程,将其设置直接复制即可,如下:

在 stdafx.h 中加入包含CAD控件头文件代码。
#include "..\..\..\MxInc\MxDraw.h"
在 CViewApp::InitInstance() 中加入对初始化控件函数的调用。
BOOL CHelloMxDrawApp::InitInstance()
{
INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
InitCtrls.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
CWinApp::InitInstance();
AfxEnableControlContainer();
CShellManager *pShellManager = new CShellManager;
CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerWindows));
SetRegistryKey(_T("应用程序向导生成的本地应用程序"));
//////////////////////////////////////////////////////////////////////////
MxDraw::InitMxDraw();//注册控件
//////////////////////////////////////////////////////////////////////////
CHelloMxDrawByCPPDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
}
else if (nResponse == IDCANCEL)
{
}
else if (nResponse == -1)
{
TRACE(traceAppMsg, 0, "警告: 对话框创建失败,应用程序将意外终止。\n");
TRACE(traceAppMsg, 0, "警告: 如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS。\n");
}
if (pShellManager != NULL)
{
delete pShellManager;
}
#if !defined(_AFXDLL) && !defined(_AFX_NO_MFC_CONTROLS_IN_DIALOGS)
ControlBarCleanUp();
#endif
//////////////////////////////////////////////////////////////////////////
MxDraw::UnInitMxDraw();//释放控件
//////////////////////////////////////////////////////////////////////////
return FALSE;
}在 HelloMxDrawDlg.h 中生成的Dialog类中添加控件窗口句柄的成员变量。
MxDraw::MXDRAWOCXHANDLE m_hDrawOcx;
在面板中添加一个Group Box来制定CAD控件界面大小、添加两个按钮,分别为“打开DWG”和“Hello World”,如下:

Group Box设置为不可见:

包含资源文件
#include "resource.h"
在HelloMxDrawDlg.cpp的 OnInitDialog() 函数中添加如下代码:
// TODO: 在此添加额外的初始化代码 CRect rcPos; GetDlgItem(IDC_RANGE_STATIC)->GetWindowRect(rcPos); ScreenToClient(rcPos); m_hDrawOcx = MxDraw::CreateMxDraw(this, rcPos, MxDraw::kShowCmdLineWindow); ASSERT(m_hDrawOcx != NULL);
为“打开DWG”按钮增加单击事件,在事件中添加如下代码:
// TODO: 在此添加控件通知处理程序代码
CFileDialog openDlg(TRUE, _T("dwg"), NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, _T("dwg(*.dwg) | *.dwg||"), this);
CString sFileName;
//打开对话的初始路径
openDlg.m_ofn.lpstrInitialDir = _T("C:\\");
//显示打开文件的对话框
if (openDlg.DoModal() == IDOK)
sFileName = openDlg.GetPathName();
else
return;
//打开dwg文件,并显示
if (!MxDraw::ReadDwg(m_hDrawOcx, sFileName))
{
CString sError;
sError.Format(_T("打开dwg文件%s失败"), sFileName);
AfxMessageBox(sError);
}为“Hello World”按钮增加单击事件,在事件中添加如下代码:
void CHelloMxDrawByCPPDlg::OnBnClickedHelloworldButton()
{
// 通过 新建(读取空文件) 来清空当前空间
MxDraw::ReadDwg(MxDraw::GetCurOcxHandle(), _T(""));
// 定义文字对象。
McDbText * pText = new McDbText(
McGePoint3d(100, 100, 0), //文字位置
L"Hello World", //文字内容
McDbObjectId::kNull, //文字样式,为空则取当前默认样式
200.0 //文字高度
);
// 设置文字颜色.
pText->setColorIndex(Mx::mcedRGB2Index(RGB(255, 0, 0)));
// 添加当前图形数据库中
MrxDbgUtils::addToCurrentSpaceAndClose(pText);
// 显示居中.
Mx::ZoomE();
// 刷新
MxDraw::UpdateDisplay(MxDraw::GetCurOcxHandle());
}至此就是在VC++完成的一个用控件“ 打开DWG ”的入门功能,我们编译生成exe文件, 如果我们设置了输出到控件 \Bin\vc100x64d\... 直接运行即可; 或者将CAD控件 \Bin\vc100x64d\ 下的文件拷贝至生成的EXE所在目录下。运行效果如下:

更多的实例代码在CAD控件 \Src\MxDraw5.2\samples 下可找到。如Edit,MxDrawCADTools,MxDrawOcx,ExApp,CustomEntity,MxExpressTools。