vc6.0でのMapXの使い方(地図表示)


1.VCの下でMapXコントロールを使う方法は、ネット上にはたくさんありますが、ほとんどはプロセスを話しているだけで、原理がありません.だから、自分がパソコンでやっているときに間違いがたくさんあります.ここで自分の勉強の過程のいくつかの悟りを書きます!
一、MapXの基石を使って、VCの下でgstフォーマットの地図を表示する
第一歩:MFCアプリケーションウィザードで単一ドキュメントを新規作成するプロジェクトで、名前はmapxdemoとして取ってもいいです.
ステップ2:Project>Add To Project>Files、MapXを選択します.cppとMapX.h.同時に手作業でMapxをhとMapx.cppこの2つのファイルをあなたのプロジェクトディレクトリにコピーします.そうしないと、コンパイル時にエラーが発生します.
ステップ3:mapxdemoView.hファイルには以下のものが含まれています.
#include "MapX.h"

また、ビュークラスでオブジェクトを定義します.
 class CMapxdemoView : pubic CView
{
      ......
      CMapX m_ctrlMapX;  //      
      .....
      ......
}
ステップ4:定数を宣言します.View>ResourceSymbols>New>nameがIDC_MAP.
ステップ5:クラスウィザード(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);
}

ステップ6:クラスウィザードでCMapXSampleViewのWM_を作成するSETFOCUSの処理メッセージは、ウィンドウがアクティブなときにフォーカスが得られることを保証する.
void CMapxSampleView::OnSetFocus(CWnd* pOldWnd) 
{
	CView::OnSetFocus(pOldWnd);
        m_ctrlMapX.SetFocus();
}
転載出典:http://blog.csdn.net/hznydx/article/details/2926893