阅读:1625回复:3
[求助]IUnknown接口
<P>在vb 中的IUnknown这个接口,在。NET中没有找到这个接口,那该用什么接口去替换它呢? </P>
<P>就象下面这个代码怎么改成。NET的<BR>Public Sub CopyAndOverwriteMap()</P> <P> Dim pObjectCopy As IObjectCopy<BR> Set pObjectCopy = New ObjectCopy<BR> <BR> Dim pToCopyMap As IUnknown<BR> Set pToCopyMap = MapControl1.ActiveView.FocusMap<BR> <BR> <BR> Dim pCopiedMap As IUnknown<BR> Set pCopiedMap = pObjectCopy.copy(pToCopyMap)<BR> <BR> Dim pToOverwriteMap As IUnknown<BR> Set pToOverwriteMap = Me.PageLayoutControl1.ActiveView.FocusMap<BR> <BR> pObjectCopy.Overwrite pCopiedMap, pToOverwriteMap<BR> <BR> If pToOverwriteMap Is Nothing Then<BR> Exit Sub<BR> End If<BR> <BR> Dim m_pMapFrame As IMapFrame<BR> Set m_pMapFrame = PageLayoutControl1.GraphicsContainer.FindFrame(PageLayoutControl1.ActiveView.FocusMap)<BR> m_pMapFrame.ExtentType = esriExtentScale<BR> <BR> PageLayoutControl1.Page.IsPrintableAreaVisible = True</P> <P> PageLayoutControl1.ActiveView.Extent = MapControl1.ActiveView.Extent<BR> PageLayoutControl1.Refresh esriViewGeography<BR> <BR> <BR> PageLayoutControl1.ZoomToWholePage</P> <P>End Sub</P> |
|
1楼#
发布于:2005-12-10 16:48
用object试试
|
|
2楼#
发布于:2005-12-10 23:21
<P>用object没用</P>
<P>结果我用IActiveView试了试,就可以了</P> <P>是不是IUnknown这个借口在。NET中是不是不确定的,有很多种??</P> |
|
3楼#
发布于:2006-03-25 11:20
在工程里面添加stdole引用,然后在程序里面用stdole.IUnknown就可以了。
|
|