在程序运行时可动态生成菜单,如导入某个文件夹下的数据库名称,用户可点击任一子菜单,进入该数据库下编辑浏览。但是如何在子菜单前面加“√”,即仅仅使该子菜单的Checked = True,而其他子菜单没有这个“√”,方法如下。
在生成动态菜单的自定义事件下加入下列代码:
其中MenuItem1指动态生成子菜单的母级菜单。
Dim itemClicked As New MenuItem '获得当前选中的菜单项 itemClicked = CType(sender,MenuItem) '获得当前选中的菜单项 Dim itm As New MenuItem '获得MenuItem1下所有的子菜单 Dim j As Integer For j = 0 To MenuItem1.MenuItems.Count - 1 itm = CType(MenuItem1.MenuItems(j),MenuItem) itm.Checked = False '所有的子菜单不选中 Next itemClicked.Checked = True '当前选中的菜单选中