-
采用ActiveX控件插入的方式
上面我们是通过代码直接将地图控件放到界面上,这种有一个不好的地方就是,如果我们要设置控件的一些样式和视觉效果,我们要自己写很多代码,在C#中我们就很容易,其实在VC中也可以采用这种方式,下来我介绍下:
-
插入控件
在View的界面上右键插入,在弹出的对话框中找到Esri的东西,如下图:
-
添加变量
点了确定之后可以在头文件中看到如下信息:
在源码文件中看到DDX_Control的代码语句也被添加
-
添加代码
添加窗体的SIZE消息,让地图控件自动放大和缩小:
void CMapMFCView::OnSize(UINT nType, int cx, int cy)
{
CFormView::OnSize(nType, cx, cy);
if(m_MapTest.m_hWnd!=NULL)
{
CRect rc;
GetClientRect(rc);
GetDlgItem(IDC_MAPTest)->MoveWindow(rc);
}
// TODO: 在此处添加消息处理程序代码
}