阅读:1042回复:1
[em23]各位大虾请帮忙看看添加临时图层的代码
<P>看我这段增加临时图层的代码,为什么一直提示说没有指定 FileSpec,临时图层不是不需要FileSpec吗?或者谁有添加临时图层的代码给我一份,谢谢</P>
<P>LayerInfo.SetType(miLayerInfoTypeTemp); VARIANT ParamVt; ParamVt.vt = VT_BSTR; ParamVt.bstrVal = m_strRegionLayerName.AllocSysString(); LayerInfo.AddParameter(_T("name"),ParamVt);</P> <P>CMapXLayer hideLayer = m_ctrlMapX.GetLayers().Item("layer1");</P> <P>VARIANT Fields; CMapXFields fields; VARIANT vtLayer; vtLayer.vt = VT_DISPATCH; vtLayer.pdispVal = hideLayer.m_lpDispatch; CMapXDataset ds = m_ctrlMapX.GetDatasets().Add(miDataSetLayer,vtLayer); fields = ds.GetFields(); Fields.vt = VT_DISPATCH; Fields.pdispVal = fields.m_lpDispatch; LayerInfo.AddParameter(_T("Fields"),Fields);</P> <P>VARIANT features; CMapXFeatures newFS = hideLayer.AllFeatures().Clone(); features.vt = VT_DISPATCH; features.pdispVal = newFS.m_lpDispatch; LayerInfo.AddParameter(_T("FeatureS"),features);</P> <P>ParamVt.vt = VT_BSTR; ParamVt.bstrVal = CString("MemTable").AllocSysString(); LayerInfo.AddParameter(_T("TableStorageType"),ParamVt);</P> <P>CMapXLayers lys = m_ctrlMapX.GetLayers();</P> <P>BOOL b = LayerInfo.CreateDispatch(LayerInfo.GetClsid()); CMapXLayer lymem = lys.Add(LayerInfo.m_lpDispatch); </P> |
|