如何:创建工具栏在 IDE

可以将工具栏添加到集成 (IDE)开发环境通过定义类型 Toolbar 菜单在 VSPackage .vsct 文件的。

工具栏具有以下特征:

  • 工具栏是包含按钮的水平或竖线。 按钮可以具有图标或文本或图标和文本的组合。

  • 工具栏在其父窗口所有边缘可以停靠。

  • IDE 视为一 VSPackage 提供的工具栏类似于将在 Visual Studio 中包括的工具栏。 VSPackage 不必执行任何编程方式使其工具栏由 自定义 对话框识别。 如果用户自定义工具栏, IDE 会自动跟踪更改。

  • IDE 会自动使工具栏显示在 视图 菜单的 工具栏 子菜单,以便用户可以将其隐藏或显示它。

  • 没有可见命令的工具栏自动隐藏。

通过指定标志更改这些属性,则定义在 .vsct 文件中的工具栏,如以下过程所示,。

创建工具栏在 IDE

  1. 通过运行 Visual Studio 包模板创建一个包。 按照 演练:将工具栏添加到 IDE的包创建命令。

  2. 在编辑器中打开 .vsct 文件。 在 符号 部分构成的部分,找到包含菜单、组和命令的 GuidSymbol 元素。

  3. 如下面的示例所示,添加每个的一个 IDSymbol 元素:工具栏、命令组和一个或多个命令。

    <IDSymbol name="MyMenuGroup" value="0x1020" />
    <IDSymbol name="cmdidTestCmd" value="0x0100" />
    <IDSymbol name="Toolbar" value="0x1000" />
    <IDSymbol name="ToolbarGroup" value="0x1050" />
    

    GuidSymbol 和 IDSymbol 元素的 name 属性在所定义的工具栏、命令或组中提供 GUID: 委托该工具栏、命令或组的 ID 匹配。 GUID 表示为 VSPackage 定义设置的命令。 多个命令在包设置中定义。 GUID: 用于标识每个项目必须是唯一的 ID 匹配。

  4. 上面由 部分构成的部分中,创建一个 菜单 部分。

  5. 定义工具栏为 Menus 的一部分 菜单 元素,如下所示:

    1. 设置 guid 和 id 属性设置为 GUID: 新工具栏的 ID。

    2. 设置 priority 属性 (可选)。

      ,因为它可能是由用户,移动 priority 属性为工具栏通常忽略。 省略 priority 属性起作用并将其与对 0。 但是,因此,如果同一窗口有若干工具栏,您可以通过设置其优先级分配其起始位置。

    3. 设置 type 属性设置为 工具栏。

    4. 在 Menu 元素,请使用 字符串 元素创建一个包含 ButtonText 元素和一个 CommandName 组件的一部分。 ,当出现在 IDE 中, ButtonText 组件用于设置工具栏的名称。 CommandName 组件用于设置可作为访问的 命令 窗口工具栏上的命令名称。

      如果要添加命令标志,添加每一个的一个 CommandFlag 元素。

      有关标志值的说明,请参见 Command Flag 元素

    下面的示例定义一个工具栏。

    <Menu guid="guidIDEToolbarCmdSet" id="Toolbar"
          type="Toolbar" >
      <CommandFlag>DefaultDocked</CommandFlag>
      <Strings>
        <ButtonText>Test Toolbar</ButtonText>
        <CommandName>Test Toolbar</CommandName>
      </Strings>
    </Menu>
    

    备注

    ,因为它在 IDE 中,自动将不必定义类型 Toolbar 菜单的父级。设置为父的任何被忽略。

  6. 部分构成的部分中,创建一个 元素包含命令要显示在工具栏。

    1. 设置组的顺序确定优先级该文件夹的位置将显示在工具栏。

      具有低优先级设置的组在工具栏上 (或顶层的左侧将出现对话框,基于工具栏如何放置)。

    2. 设置组的父级为 GUID: 工具栏的 ID。

    以下组显示在工具栏。

    <Group guid="guidIDEToolbarCmdSet" id="ToolbarGroup"
          priority="0x0000">
      <Parent guid="guidIDEToolbarCmdSet" id="Toolbar"/>
    </Group>
    
  7. 向工具栏添加命令。通过创建命令项在 按钮 部分构成的一部分。 将每个命令项的父级为 GUID: 组的 ID。 每个 按钮 元素必须具有 GUID: 对应于 Symbols 部分项的 ID。

    使用每个按钮项 priority 属性指定命令了在组中显示。

    下面的示例定义一个将显示工具栏上的按钮。

    <Button guid="guidIDEToolbarCmdSet" id="cmdidTestCmd" priority="0x0100" type="Button">
      <Parent guid="guidIDEToolbarCmdSet" id="ToolbarGroup" />
      <Icon guid="guidImages" id="bmpPic1" />
      <Strings>
        <CommandName>cmdidTestCmd</CommandName>
        <ButtonText>Toolbar Test Command</ButtonText>
      </Strings>
    </Button>
    

    有关按钮和菜单项的更多信息,请参见 Button 元素

请参见

任务

演练:将工具栏添加到 IDE

演练:将工具栏添加到工具窗口

参考

How to: Create Toolbars for Tool Windowsc

概念

VSCT XML 架构参考

其他资源

使用命令、菜单和工具栏的常规任务