在 VC 中用 MAPX 如何进行地址查找?
本人用 VB+MAPX3.5 写了一个查找地名的程序,部分代码如下:
Set Layer = frmMain.Map1.Layers("地址")
Set Findds = frmMain.Map1.Datasets.Add(miDataSetLayer, Layer)
Set frmMain.Map1.Layers("地址").Find.FindDataset = Findds
Set frmMain.Map1.Layers("地址").Find.FindField = Findds.Fields(1)
Set FoundObj = frmMain.Map1.Layers("地址").Find.Search(Text1.Text)
If FoundObj.CenterX = 0 And FoundObj.CenterY = 0 Then
MsgBox "地址未找到!", vbInformation + vbOKOnly, "查找"
Else
'frmMain.Map1.ZoomTo Zoom, FoundObj.CenterX, FoundObj.CenterY
sAddr = Text1.Text
AddrX = FoundObj.CenterX: AddrY = FoundObj.CenterY
dwX = 0: dwY = 0
我现在要用 VC 重写上述程序,但我不知道
Set Findds = frmMain.Map1.Datasets.Add(miDataSetLayer, Layer)
如何用 C 表达,因为在 VC 里,
CMapXDatasets::Add 的原型是:
CMapXDatasets::Add(short Type, const VARIANT& SourceData, LPCTSTR Name=NULL, long GeoField=0)
我不知道如何把 VARIANT 与 Layer 联系起来.哪位大侠知道?