共用方式為


How to: 在 IDE 中建立工具列

您可以新增工具列到整合式的開發環境 (IDE) 藉由定義型別的功能表Toolbar VSPackage.vsct 檔案中。

工具列上有下列特性:

  • 工具列是包含按鈕的水平或垂直列。 按鈕可以具有的圖示或文字或圖示和文字的組合。

  • 可以在其父視窗的任何邊緣停駐工具列。

  • 就跟它會將 Visual Studio 中所包含的工具列的方式一樣,IDE 就會將 VSPackage 貢獻的工具列。 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" />
    

    name屬性的GuidSymbol和IDSymbol中定義的工具列、 指令或群組的項目提供的 GUID:ID 組,表示該工具列、 指令或群組。 GUID 代表一組係專為您 VSPackage 的命令。 您可以封裝中定義多個命令集。 將 GUID:ID 組是用來識別每個項目必須是唯一的。

  4. 正上方區段由所構成的群組 區段中,建立 功能表一節。

  5. 定義為工具列功能表中的項目Menus區段,如下所示:

    1. 設定guid和id屬性加入新的工具列上的 GUID:ID。

    2. 設定priority屬性 (可省略)。

      priority屬性通常省略工具列,因為使用者可能會移動它。 省略priority屬性具有相同的效果設定為 0。 不過,如果同一個視窗中有數個工具列,您可以藉由設定它們的優先權指派其起始的位置。

    3. 設定type屬性設定為工具列。

    4. 在Menu項目,使用字串項目,若要建立的區段包含了項目和 CommandName 項目。 ButtonText項目用來在 IDE 中所顯示的樣子,設定工具列的名稱。 CommandName項目用來設定可以在中輸入命令名稱命令來存取工具列視窗。

      如果您想要新增命令旗標,將 CommandFlag 的每一個項目。

      如需命令旗標值的說明,請參閱CommandFlag 項目

    下列範例會定義一個工具列。

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

    您沒有定義功能表型別的父代Toolbar因為它會自動放置在 IDE 中。會忽略父代的任何設定。

  6. 在區段中藉由構成群組 區段中,建立 群組項目來包含您想要顯示在工具列的命令。

    1. 設定要判定它會顯示在工具列上的群組優先權。

      具有較低的優先順序設定的群組會出現在左下方的工具列 (或上方,如何工具列的方向而定)。

    2. 設定工具列的 GUID:ID 群組的父代。

    下列群組會出現在工具列上。

    <Group guid="guidIDEToolbarCmdSet" id="ToolbarGroup"
          priority="0x0000">
      <Parent guid="guidIDEToolbarCmdSet" id="Toolbar"/>
    </Group>
    
  7. 將指令新增至工具列中,藉由建立命令的項目由所構成的一節中按鈕一節。 設定群組的 GUID:ID 的每個命令項目父代。 每個按鈕項目必須具有對應中的項目到 GUID:ID Symbols一節。

    使用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 結構描述參考

其他資源

一般工作的命令、 功能表和工具列