ツールバーを追加する
このチュートリアルでは、Visual Studio IDE にツールバーを追加する方法について説明します。
ツールバーとは、コマンドにバインドされたボタンを含む、水平または垂直のストリップです。 IDE のツールバーは、実装に応じて、再配置したり、メイン IDE ウィンドウの任意の辺にドッキングしたり、常に他のウィンドウより前面に表示させたりすることができます。
さらに、ユーザーは [カスタマイズ] ダイアログ ボックスを使用して、ツールバーでのコマンドの追加や削除を行えます。 通常、VSPackage のツールバーはユーザーがカスタイズできます。 カスタマイズはすべて IDE で処理され、コマンドへの応答は VSPackage で行われます。 コマンドの物理的な配置場所が VSPackage で把握されている必要はありません。
メニューに関する詳細については、「コマンド、メニュー、およびツール バー」を参照してください。
ツールバーを使用して拡張機能を作成する
IDEToolbar
という名前の VSIX プロジェクトを作成します。 ToolbarTestCommand という名前のメニュー コマンド項目テンプレートを追加します。 この方法の詳細については、メニュー コマンドを使用した拡張機能の作成に関するページをご覧ください。
IDE のツール バーを作成する
ToolbarTestCommandPackage.vsct で、[Symbols] セクションを探します。 guidToolbarTestCommandPackageCmdSet という名前の GuidSymbol 要素で、次のようにツール バーとツールバー グループの宣言を追加します。
<IDSymbol name="Toolbar" value="0x1000" /> <IDSymbol name="ToolbarGroup" value="0x1050" />
[Commands] セクションの最上部で [Menus] セクションを作成します。 [Menus] セクションに [Menu] 要素を追加して、ツール バーを定義します。
<Menus> <Menu guid="guidToolbarTestCommandPackageCmdSet" id="Toolbar" type="Toolbar"> <CommandFlag>DefaultDocked</CommandFlag> <Strings> <ButtonText>Test Toolbar</ButtonText> <CommandName>Test Toolbar</CommandName> </Strings> </Menu> </Menus>
ツール バーをサブメニューのように入れ子にすることはできません。 したがって、親グループを割り当てる必要はありません。 また、ユーザーがツール バーを移動できるので、優先度を設定する必要もありません。 通常、ツール バーの最初の配置はプログラムによって定義されますが、ユーザーによるその後の変更は保持されます。
[Groups] セクションの既存のグループ エントリの後に、ツール バーのコマンドを含むように [Group] 要素を定義します。
<Group guid="guidToolbarTestCommandPackageCmdSet" id="ToolbarGroup" priority="0x0000"> <Parent guid="guidToolbarTestCommandPackageCmdSet" id="Toolbar" /> </Group>
ボタンをツール バーに表示させます。 [Buttons] セクションで、[Button] の [Parent] ブロックをツール バーに置き換えます。 結果の [Button] ブロックは次のようになります。
<Button guid="guidToolbarTestCommandPackageCmdSet" id="ToolbarTestCommandId" priority="0x0100" type="Button"> <Parent guid= "guidToolbarTestCommandPackageCmdSet" id="ToolbarGroup" /> <Icon guid="guidImages" id="bmpPic1" /> <Strings> <ButtonText>Invoke ToolbarTestCommand</ButtonText> </Strings> </Button>
既定では、ツール バーにコマンドがない場合、ツール バーは表示されません。
プロジェクトをビルドし、デバッグを開始します。 実験用インスタンスが表示されます。
Visual Studio のメニュー バーを右クリックして、ツール バーの一覧を表示します。 [ツール バーのテスト] を選択します。
これでツール バーは、[フォルダーを指定して検索] アイコンの右側にアイコンとして表示されているはずです。 アイコンをクリックすると、「ToolbarTestCommandPackage. Inside IDEToolbar.ToolbarTestCommand.MenuItemCallback()」というメッセージ ボックスが表示されます。