使用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的地圖了!如果沒有就再試試。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章