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

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的地图了!如果没有就再试试。

你可能感兴趣的:(活动,null,Class,文档,mfc)