如何添加子菜单使用加载项

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

216548
本文已归档。它按“原样”提供,并且不再更新。
概要
本文演示了如何将子菜单添加到 vba IDE,并使用外接程序项目的当前活动窗体。
更多信息
以下步骤说明了如何编写外接程序中,将子菜单添加到 vba IDE:
  1. 开始一个新的 Visual Basic 加载项项目。默认情况下被创建一个 frmAddIn 窗体和连接 AddinDesigner (类)。
  2. 打开连接的代码窗口并定位该函数 AddToAddInCommandBar。 现有代码替换为以下:
    Function AddToAddInCommandBar(sCaption As String)   Dim cbMenuCommandBar    As Office.CommandBarPopup  ' cmd bar object   Dim cbSubMenuItem       As Office.CommandBarButton ' Added   Dim cbMenu              As Object   On Error GoTo AddToAddInCommandBarErr   ' see if we can find the Add-Ins menu   Set cbMenu = VBInstance.CommandBars("Add-Ins")   If cbMenu Is Nothing Then       ' not available so you fail       Exit Function   End If   ' add it to the command bar,  Next line Added   Set cbMenuCommandBar = cbMenu.Controls.Add(msoControlPopup, , , 1)   ' set the caption   cbMenuCommandBar.Caption = sCaption      ' Next line Added   Set cbSubMenuItem = cbMenuCommandBar.Controls.Add(msoControlButton)   cbSubMenuItem.Caption = "One"  ' Added   Set AddToAddInCommandBar = cbSubMenuItem  ' Added   Exit FunctionAddToAddInCommandBarErr:End Function						
  3. 运行该项目。
  4. 开始创建新的标准 EXE 项目在 vba IDE 的另一个实例。默认情况下创建 Form1。
  5. 单击加载项菜单。它包含"我 AddIn,"又包含一个子菜单名为"1。
下面的代码可用于创建外接程序中处于活动状态的窗体中添加子菜单的过程自动化:
  1. 开始一个新的 Visual Basic 加载项项目。默认情况下被创建一个 frmAddIn 窗体和连接 AddinDesigner (类)。
  2. 在设计模式中打开 frmAddIn,将命令按钮放在其上。默认情况下创建 Command1。
  3. 将下面的代码添加到 Form1 的通用声明部分中:
    Private Sub Command1_Click()   Dim CurrentForm As VBComponent      ' current form   Dim Ctls        As VBControls       ' form's controls   Dim Parent      As VBControl   Dim Child       As VBControl   Dim GrandChild  As VBControl   Set CurrentForm = VBInstance.SelectedVBComponent   Set Ctls = CurrentForm.Designer.VBControls   Set Parent = Ctls.Add("VB.Menu")   Parent.Properties!Caption = "&Parent"   Set Child = Parent.ContainedVBControls.Add("VB.Menu", Parent)   Child.Properties!Caption = "&Child"   Set GrandChild = Child.ContainedVBControls.Add("VB.Menu", Child)   GrandChild.Properties!Caption = "&Grand Child"End Sub						
  4. 运行此项目。
  5. 开始创建新的标准 EXE 项目在 vba IDE 的另一个实例。默认情况下创建 Form1。
  6. 单击加载项菜单,然后选择"我的 AddIn。
  7. 单击添加项对话框中的 Command1 按钮。
  8. 父菜单将被添加到 Form1。在父项包含子,又包含子菜单孙子菜单。

外接程序

警告: 本文已自动翻译

属性

文章 ID:216548 - 上次审阅时间:02/22/2014 22:56:51 - 修订版本: 2.1

  • Microsoft Visual Basic 5.0 学习版
  • Microsoft Visual Basic 6.0 学习版
  • Microsoft Visual Basic 5.0 专业版
  • Microsoft Visual Basic 6.0 专业版
  • Microsoft Visual Basic 5.0 企业版
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • kbnosurvey kbarchive kbmt kbaddin kbhowto kbmenu KB216548 KbMtzh
反馈