您的位置:首页 > 编程语言 > C语言/C++

使用VC++创建MapX控件步骤

2012-07-23 22:25 369 查看
使用VC++创建MapX控件步骤如下:

第一步:用VC++的程序向导来创建一个单文档程序MapXSample。

第二步:Project> Add To Project>Files,选择MapX.cpp和MapX.h。

在您的项目中包括MapX.cpp和.h文件。这两个文件包含用于对MapX控件进行访问的类定义和方法实现。MapX.h 和 MapX.cpp 文件可能位于安装有 MapX 的 Samples50\CPP 子目录中.利用VC++ 环境下的应用程序生成向导创建一单文档应用程序MapSample后,将MapX.h和MapX.cpp文件拷贝到当前工程路径下,然后从Project菜单中选择Add to Project >Files命令,此时打开Insert Files into Project对话框,选择MapSample文件夹下的MapX.h和MapX〉cpp文件加入到工程中。

警告:不要选择Project菜单中的Add to Project > Components And Controls命令。这样做将会创建一个.cpp文件,但该文件将是不完整的。我一开始就是这么做的,结果很多常用函数都没有,郁闷了我很长时间。希望大家一起要切记这一点。

第三步:在将包含该控件得视图(MapXSampleView.h)中包括它:#include "MAPX.H"

警告:如果在MapXSampleView.cpp中包含#include "MAPX.H"而不是在MapXSampleView.h中就会出现错误,与通常的思维有些不同!error C2501: 'm_ctrlMapX' : missing storage-class or type specifiers!不知道什么原因,我调了好长时间才改过来,网上遇到这种错误也没有能够改正。

第四步:在MapXSampleView.h中定义一个CmapX对象。

class CMapxSampleView : public CView

{

……

protected:

CMapX m_ctrlMapX;//声明类的实例

……

}

第五步:声明表示用于MapX的控件ID的常数。View > Resource Symbols>New>name为IDC_MAP。

第六步:在类向导(ctrl+w)中为CMapXSampleView创建WM_SIZE 和 WM_CREATE的处理消息函数:

void CMapxSampleView::OnCreate(UINT nType, int cx, int cy)

{

m_ctrlMapX.Create(NULL, WS_VISIBLE, CRect(0,0,100,100), this,IDC_MAP);

}

void CMapxSampleView::OnSize(UINT nType, int cx, int cy)

{

CView::OnSize(nType, cx, cy);

m_ctrlMapX.MoveWindow(0,0,cx,cy,TRUE);

}

第七步:在类向导中为CMapXSampleView创建WM_SETFOCUS的处理消息,以确保当窗口处于活动状态时得到焦点。

void CMapxSampleView::OnSetFocus(CWnd* pOldWnd)

{

CView::OnSetFocus(pOldWnd);

m_ctrlMapX.SetFocus();

}

第八步:编译运行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: