阅读:1645回复:1
[讨论]engine中的IToolControl的使用问题
<P>在用engine开发中,利用icommand 和IToolControl开发一个command时,为什么IToolControl_OnFocus事件不起作用。请指教!!!!!</P>
<P>代码如下:</P> <P>Option Explicit</P> <P>Implements ICommand Implements IToolControl</P> <P>Private Sub Class_Initialize() Set m_pHookhelper = New HookHelper End Sub</P> <P>Private Property Get ICommand_Bitmap() As esriSystem.OLE_HANDLE</P> <P>End Property</P> <P>Private Property Get ICommand_Caption() As String ICommand_Caption = "Custom ImageCombo" End Property</P> <P>Private Property Get ICommand_Category() As String ICommand_Category = "Developer Samples" End Property</P> <P>Private Property Get ICommand_Checked() As Boolean</P> <P>End Property</P> <P>Private Property Get ICommand_Enabled() As Boolean ICommand_Enabled = True End Property</P> <P>Private Property Get ICommand_HelpContextID() As Long</P> <P>End Property</P> <P>Private Property Get ICommand_HelpFile() As String</P> <P>End Property</P> <P>Private Property Get ICommand_Message() As String ICommand_Message = "Change feature selection color" End Property</P> <P>Private Property Get ICommand_Name() As String ICommand_Name = "DevelperSamples_CustomImageCombo" End Property</P> <P>Private Sub ICommand_OnClick() 'ttt End Sub</P> <P>Private Sub ICommand_OnCreate(ByVal hook As Object) Set m_pHookhelper.hook = hook End Sub</P> <P>Private Property Get ICommand_Tooltip() As String ICommand_Tooltip = "Change Selection Color" End Property</P> <P>Private Property Get IToolControl_hWnd() As esriSystem.OLE_HANDLE IToolControl_hWnd = frmImageCombo.curlayrer.hWnd End Property</P> <P>Private Function IToolControl_OnDrop(ByVal barType As esriSystemUI.esriCmdBarType) As Boolean IToolControl_OnDrop = True</P> <P>End Function</P> <P>Private Sub IToolControl_OnFocus(ByVal complete As esriSystemUI.ICompletionNotify) Set g_pCompNotify = complete End Sub</P> <P>公共模块:</P> <P>Option Explicit</P> <P> Public g_pCompNotify As ICompletionNotify Public m_pHookhelper As IHookHelper</P> <P>窗体:</P> <P>Option Explicit Private m_pMap As esriCarto.IMap</P> <P>Private Sub cblayer_Click() UpdateLayerList Set m_pMap = m_pHookhelper.FocusMap Dim pMap As esriCarto.IMap Set pMap = m_pMap If Not g_pCompNotify Is Nothing Then g_pCompNotify.SetComplete End Sub</P> [此贴子已经被作者于2005-4-4 7:59:15编辑过]
|
|
|
1楼#
发布于:2005-04-23 06:44
<P>没人回答?????????????</P>
|
|
|