在Access快速开发平台2.2.0版本后,当我们要实现如下图所示,单击某一个导航按钮图片就能打开相应的窗体时,用以前的版本中教程中的代码会达不到目标,这时要分三步来解决:
第一步: DoMenuCmd函数改为下面的代码
Function DoMenuCmd(MenuText As String)
On Error GoTo ErrorHandler
Dim strMenuID As String
strMenuID = Nz(DLookup("ID", "SysLocalNavigationMenus", "MenuText=" & SQLText(MenuText)))
If IsChildForm(Me) Then
Call Me.Parent.DoTreeMenuItemAction(Me.Parent.mclsNavTree.Nodes("K" & strMenuID))
Else
RunMenuCommand "" & DLookup("Command", "SysLocalNavigationMenus", "ID='" & strMenuID & "'")
End If
ExitHere:
Exit Function
ErrorHandler:
MsgBoxEx Err.Description, vbCritical
Resume ExitHere
End Function
第二步:把private 改为 public
在SysFrmMain窗体中,把:Private Sub DoTreeMenuItemAction
改成
Public Sub DoTreeMenuItemAction
如下图:
第三步:更改Key值
key值在导航菜单编辑器中可以找到,如下图所示: