教你如何加载指定tab文件
来源:百度文库 编辑:神马文学网 时间:2024/06/30 20:23:50
教你如何加载指定tab文件
以下代码演示了如何加载指定tab文件
int CHtGisClientView::LoadCustomLayers(char *LayerDirPath)
{
CMapXLayerInfo layerInfo ;
// CMapXFields mapFields;
CStringArray tabFileList ;
try{
layerInfo.CreateDispatch( layerInfo.GetClsid() );
// mapFields www.diannao114.cn .CreateDispatch( mapFields.GetClsid());
//
// mapFields.AddStringField("FID",254);
//
// COleVariant vFields;
// vFields.vt=VT_DISPATCH;
// vFields.pdispVal=mapFields;
// vFields.pdispVal->AddRef();
GetFilesOfPath( LayerDirPath , tabFileList ) ;
CString tabFileName , tabFileTitle ;
for ( int i = 0 ; i < tabFileList.GetSize() ; i++ ) {
tabFileName = tabFileList.GetAt( i ) ;
tabFileTitle = GetFileTitleFromFileName( tabFileName , FALSE );
layerInfo.SetType( miLayerInfoTypeTab ) ;
layerInfo.AddParameter("Filespec" , COleVariant(tabFileName) );
layerInfo.AddParameter("Name" , COleVariant(tabFileTitle) );
// layerInfo.AddParameter("Fields", vFields );
m_ctrlMapX.GetLayers().Add(layerInfo);
} [Page]
return R_OK ;
}
catch(COleDispatchException* e) {
e->ReportError();
e->Delete();
} catch(COleException* e) {
e->ReportError();
e->Delete();
}
return R_DEFAULT ;
}
教你如何加载指定tab文件
以下代码演示了如何加载指定tab文件
int CHtGisClientView::LoadCustomLayers(char *LayerDirPath)
{
CMapXLayerInfo layerInfo ;
// CMapXFields mapFields;
CStringArray tabFileList ;
try{
layerInfo.CreateDispatch( layerInfo.GetClsid() );
// mapFields www.diannao114.cn .CreateDispatch( mapFields.GetClsid());
//
// mapFields.AddStringField("FID",254);
//
// COleVariant vFields;
// vFields.vt=VT_DISPATCH;
// vFields.pdispVal=mapFields;
// vFields.pdispVal->AddRef();
GetFilesOfPath( LayerDirPath , tabFileList ) ;
CString tabFileName , tabFileTitle ;
for ( int i = 0 ; i < tabFileList.GetSize() ; i++ ) {
tabFileName = tabFileList.GetAt( i ) ;
tabFileTitle = GetFileTitleFromFileName( tabFileName , FALSE );
layerInfo.SetType( miLayerInfoTypeTab ) ;
layerInfo.AddParameter("Filespec" , COleVariant(tabFileName) );
layerInfo.AddParameter("Name" , COleVariant(tabFileTitle) );
// layerInfo.AddParameter("Fields", vFields );
m_ctrlMapX.GetLayers().Add(layerInfo);
} [Page]
return R_OK ;
}
catch(COleDispatchException* e) {
e->ReportError();
e->Delete();
} catch(COleException* e) {
e->ReportError();
e->Delete();
}
return R_DEFAULT ;
}
教你如何加载指定tab文件