|
阅读:882回复:0
新手上路
<P>在VB+AO中mapcontrol和pagelayoutcontrol应该怎么关联?</P>
<P>我用以下语句怎么不行:</P> <P>Public Sub copyandoverwritemap() 'Get IObjectCopy interface Dim pObjectCopy As IObjectCopy Set pObjectCopy = New ObjectCopy</P> <P> 'Get IUnknown interface (map to copy) Dim pToCopyMap As IUnknown Set pToCopyMap = MapControl1.ActiveView.FocusMap</P> <P> 'Get IUnknown interface (copied map) Dim pCopiedMap As IUnknown Set pCopiedMap = pObjectCopy.Copy(pToCopyMap)</P> <P> 'Get IUnknown interface (map to overwrite) Dim pToOverwriteMap As IUnknown Set pToOverwriteMap = PageLayoutControl1.GraphicsContainer 'Overwrite the MapControl's map pObjectCopy.Overwrite pCopiedMap, pToOverwriteMap SetMapExtent End Sub</P> <P>Private Sub SetMapExtent() 'Get IActiveView interface Dim pActiveView As IActiveView Set pActiveView = MapControl1.ActiveView.FocusMap 'Set the control's extent PageLayoutControl1.Extent = pActiveView.Extent 'Refresh the display PageLayoutControl1.Refresh End Sub</P> |
|