您的位置:首页 > 其它

使用MapX的基石,在VC下显示gst格式的地图

2013-08-14 01:11 260 查看
http://blog.csdn.net/zhihu008/article/details/7777076

1.在VC下使用MapX控件的方法,网上有很多,但是大都只是讲过程,没有原理。所以很多时候自己在电脑上做的时候还是有很多错误。 这里写一下自己学习过程中的一些感悟!

 一:使用MapX的基石,在VC下显示gst格式的地图

  第一步:用MFC应用程序向导新建一个单文档的工程,名字就不妨取为:mapxdemo

第二步:Project> Add To Project>Files,选择MapX.cpp和MapX.h。同时还要手工将Mapx.h和Mapx.cpp这两个文件复制到你的工程目录中去,不然编译时会报错的

  第三步:在mapxdemoView.h文件中包括它:

    #include "MapX.h"

另外还要在视图类中定义一个对象:

class CMapxdemoView : pubic CView

{

......

CMapX m_ctrlMapX; //这是要添加的

.....

......

}

第四步::声明一个常量。View > Resource Symbols>New>name为IDC_MAP。

   第五步:在类向导(ctrl+W)中为mapxdemoView创建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();

}

然后编译运行。就可以看到USA的地图了!如果没有就再试试。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐