教你如何加载指定tab文件

来源:百度文库 编辑:神马文学网 时间:2024/06/28 10:07:32
教你如何加载指定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文件