阅读:1790回复:2
如何使用编码的方法在Arcengie中调用ArcMap工具条命令
<b>如何使用编码的方法在Arcengie中调用ArcMap工具条命令
</b><FONT color=#dfebff>--------------------------------------------------------------------</FONT> 如何使用编码的方法在Arcengie中调用ArcMap工具条命令? <P>可以使用esriToolBarControl调用ArcMap工具条命令,但是出来的Tooltip是英文的,如何修改? 另外除了esriControlCommands提供的命令外,其他命令如何调用?</P> |
|
1楼#
发布于:2004-09-27 17:01
<P>在toolbar中是修改不了的</P><P>只有编写自己的dll,在dll中修改tooltip,然后用toolbar来调用</P>
|
|
|
2楼#
发布于:2004-09-28 11:58
<P>这是我创建的Dll,可是在ICommand_OnClick中调用Call m_pPanCmd.OnClick,没有效果,是什么原因呢?</P><P>Const c_sModuleFileName As String = "Map_Pan.cls" ' Constant reflect file module name</P><P>' Member Variables for coclass Map_Pan
Private m_pHookHelper As IHookHelper Dim m_pBitmap As IPictureDisp Private m_pPanCmd As ICommand</P><P>' Miscellaneous member variables used by coclass ' Interfaces implemented by coclass Implements ICommand</P><P> Private Sub Class_Initialize() Set m_pPanCmd = New ControlsMapPanTool Set m_pBitmap = LoadResPicture("MAP_PAN", vbResBitmap) End Sub</P><P>Private Sub Class_Terminate() On Error GoTo ErrorHandler Set m_pHookHelper = Nothing ' Set m_pPanCmd = Nothing Exit Sub ErrorHandler: HandleError True, "Class_Terminate " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Sub Private Property Get ICommand_Enabled() As Boolean On Error GoTo ErrorHandler ICommand_Enabled = m_pPanCmd.Enabled Exit Property ErrorHandler: HandleError True, "ICommand_Enabled " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Checked() As Boolean On Error GoTo ErrorHandler ICommand_Checked = m_pPanCmd.Checked Exit Property ErrorHandler: HandleError True, "ICommand_Checked " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Name() As String On Error GoTo ErrorHandler ICommand_Name = "Map_Pan" Exit Property ErrorHandler: HandleError True, "ICommand_Name " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Caption() As String On Error GoTo ErrorHandler ICommand_Caption = "移动"</P><P> Exit Property ErrorHandler: HandleError True, "ICommand_Caption " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Tooltip() As String On Error GoTo ErrorHandler ICommand_Tooltip = "移动" Exit Property ErrorHandler: HandleError True, "ICommand_Tooltip " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Message() As String On Error GoTo ErrorHandler ICommand_Message = "移动" Exit Property ErrorHandler: HandleError True, "ICommand_Message " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_HelpFile() As String On Error GoTo ErrorHandler ' TOD Add your implementation here Exit Property ErrorHandler: HandleError True, "ICommand_HelpFile " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_HelpContextID() As Long On Error GoTo ErrorHandler ' TOD Add your implementation here Exit Property ErrorHandler: HandleError True, "ICommand_HelpContextID " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Bitmap() As esriSystem.OLE_HANDLE On Error GoTo ErrorHandler ICommand_Bitmap = m_pBitmap Exit Property ErrorHandler: HandleError True, "ICommand_Bitmap " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Property Get ICommand_Category() As String On Error GoTo ErrorHandler ICommand_Category = "Lin_MapTools" Exit Property ErrorHandler: HandleError True, "ICommand_Category " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Property Private Sub ICommand_OnCreate(ByVal hook As Object) On Error GoTo ErrorHandler Set m_pHookHelper = New HookHelper Set m_pHookHelper.hook = hook Exit Sub ErrorHandler: HandleError True, "ICommand_OnCreate " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Sub Private Sub ICommand_OnClick() On Error GoTo ErrorHandler ' TOD Add your implementation here Call m_pPanCmd.OnClick Exit Sub ErrorHandler: HandleError True, "ICommand_OnClick " ; c_sModuleFileName ; " " ; GetErrorLineNumberString(Erl), Err.Number, Err.Source, Err.Description, 3 End Sub </P> |
|