阅读:2034回复:5
请教:IHookHelper与AxMapControl勾连问题??
请教:IHookHelper与AxMapControl勾连问题??<BR> 下面是VBA中的一段代码,实现调用AO中的现有的功能,我想在VB.NET+AO方法中的一个菜单项中也调用下面的代码,因为下面的代码中用到了Application,所以要用IHookHelper与AxMapControl勾连,请教怎么样修改下面的代码才能实现我功能??非常感谢!<BR> Dim pUID As New UID<BR> Dim pCmdItem As ICommandItem<BR> ' Use the GUID of the Save command<BR> pUID.Value = "{119591DB-0255-11D2-8D20-080009EE4E51}"<BR> ' or you can use the ProgID<BR> ' pUID.Value = "esriArcMapUI.MxFileMenuItem"<BR> pUID.SubType = 3<BR> Set pCmdItem = Application.Document.CommandBars.Find(pUID)<BR> pCmdItem.Execute<BR>
|
|
1楼#
发布于:2007-09-27 11:35
IHookHelper.FocusMap --〉AxMapControl.Map<br><br><br>
|
|
|
2楼#
发布于:2007-09-27 11:42
<P>楼上兄弟,下一句话在VB.net中提示错误:属性FocusMap 为"ReadOnly",怎么样修改??比较急,谢谢!</P>
<P>ihk.FocusMap = AxMapControl1</P> |
|
3楼#
发布于:2007-09-27 11:42
你是要做独立程序还是在ARCGIS中嵌入式,如果是独立程序,你调用的pUID.Value = "esriArcMapUI.MxFileMenuItem"这个菜单项应该是不可以实现的,如果是嵌入式的,那直接把vba的翻译成vb.net的就可以.上面代码中取掉set就可以.<BR>
|
|
4楼#
发布于:2007-09-27 11:50
<HR>
请问题怎样才能在独立的应用程序中调用已有功能??比放大、漫游等? |
|
5楼#
发布于:2007-09-27 15:50
<PRE>esri只包装了部分工具:如下</PRE><PRE>Dim pCommand As ICommand<BR>Set pCommand = New ControlsMapPanTool<BR>pCommand.OnCreate (MapControl1.Object)<BR>If pCommand.Enabled = True Then<BR> Set MapControl1.CurrentTool = pCommand<BR>End If</PRE>
|
|