次の方法で共有


チュートリアル : リボン デザイナを使用したカスタム タブの作成

更新 : 2007 年 11 月

対象

このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。

プロジェクトの種類

  • ドキュメント レベルのプロジェクト

  • アプリケーション レベルのプロジェクト

Microsoft Office のバージョン

  • Excel 2007

  • Word 2007

  • Outlook 2007

  • PowerPoint 2007

詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。

このチュートリアルでは、リボン デザイナを使用してカスタム リボン タブを作成する方法について説明します。リボン デザイナでは、カスタム タブにコントロールを追加したり、カスタム タブにコントロールを配置したりすることができます。

このチュートリアルでは、次のタスクについて説明します。

  • 操作ウィンドウの作成

  • カスタム タブの作成

  • カスタム タブのボタンによる操作ウィンドウの表示/非表示の切り替え

Bb386104.alert_note(ja-jp,VS.90).gifメモ :

次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピュータでは名前や場所が異なる場合があります。これらの要素は、使用する Visual Studio のエディションとその設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。

前提条件

このチュートリアルを完了するには、次のコンポーネントが必要です。

  • Visual Studio Tools for Office (Visual Studio 2008 Professional および Visual Studio Team System のオプションの要素)

  • Microsoft Office Excel 2007

ここに挙げた Visual Studio のバージョンでは、Visual Studio Tools for Office が既定でインストールされます。インストールされているかどうかを確認する方法については、「Visual Studio Tools for Office のインストール」を参照してください。

ビデオへのリンクビデオ デモについては、「Video How to: Creating a Custom Tab by Using the Ribbon Designer」を参照してください。

Excel ブック プロジェクトの作成

すべての Office アプリケーションで、ほぼ同じ手順でリボン デザイナを操作できます。この例では、Excel ブックを使用します。

Excel ブック プロジェクトを作成するには

  • MyExcelRibbon という名前で Excel 2007 ブックのプロジェクトを作成します。詳細については、「方法 : Visual Studio Tools for Office プロジェクトを作成する」を参照してください。

    Visual Studio によって、デザイナで新しいブックが開き、ソリューション エクスプローラMyExcelRibbon プロジェクトが追加されます。

操作ウィンドウの作成

プロジェクトに 2 つのカスタム操作ウィンドウを追加します。後の作業で、カスタム タブに対して、これらの操作ウィンドウの表示/非表示を切り替えるボタンを追加します。

操作ウィンドウを作成するには

  1. [プロジェクト] メニューの [新しい項目の追加] をクリックします。

  2. [新しい項目の追加] ダイアログ ボックスで、[ActionsPaneControl] を選択し、[追加] をクリックします。

    デザイナで ActionsPaneControl1.cs ファイルまたは ActionsPaneControl1.vb ファイルが開きます。

  3. ツールボックス[コモン コントロール] タブから、デザイナ画面にラベルを追加します。

  4. [プロパティ] ウィンドウで、label1 の [Text] プロパティを Actions Pane 1 に設定します。

  5. 手順 1. ~ 5. を繰り返して、2 つ目の操作ウィンドウとラベルを作成します。2 番目のラベルの [Text] プロパティは Actions Pane 2 に設定します。

カスタム タブの作成

Office アプリケーションのデザイン ガイドラインの 1 つとして、ユーザーが常に Office アプリケーションの UI を操作できなければならないことがあります。操作ウィンドウにこの機能を追加するには、リボンのカスタム タブから操作ウィンドウの表示/非表示を切り替えることができるボタンを追加します。カスタム タブを作成するには、プロジェクトにリボン (ビジュアル デザイナ) 項目を追加します。デザイナでは、コントロールの追加と配置、コントロールのプロパティの設定、およびコントロール イベントの処理を行うことができます。

カスタム タブを作成するには

  1. [プロジェクト] メニューの [新しい項目の追加] をクリックします。

  2. [新しい項目の追加] ダイアログ ボックスで、[リボン (ビジュアル デザイナ)] をクリックします。

  3. 新しいリボンの名前を "MyRibbon" に変更し、[追加] をクリックします。

    リボン デザイナで MyRibbon.cs ファイルまたは MyRibbon.vb ファイルが開き、既定のタブとグループが表示されます。

  4. リボン デザイナで [group1] をクリックします。

  5. [プロパティ] ウィンドウで、[ラベル] を Actions Pane Manager に設定します。

  6. ツールボックス[Office リボン コントロール] タブから、ボタンを group1 にドラッグします。

  7. [button1] をクリックして選択します。

  8. [プロパティ] ウィンドウで、[ラベル] を Show Actions Pane 1 に設定します。

  9. 2 番目のボタンを group1 に追加し、[ラベル] プロパティを Show Actions Pane 2 に設定します。

  10. ツールボックス[Office リボン コントロール] タブから、ToggleButton コントロールを group1 にドラッグします。

  11. [ラベル] プロパティを Hide Actions Pane に設定します。

カスタム タブのボタンによる操作ウィンドウの表示/非表示の切り替え

最後の手順で、ユーザーに応答するコードを追加します。2 つのボタンの Click イベントと、トグル ボタンの Click イベントのイベント ハンドラを追加します。操作ウィンドウの表示/非表示を切り替えるイベント ハンドラに、コードを追加します。

カスタム タブのボタンを使用して操作ウィンドウの表示/非表示を切り替えるには

  1. ソリューション エクスプローラで MyRibbon.vb または MyRibbon.cs を右クリックし、[コードの表示] をクリックします。

  2. MyRibbon クラスの先頭に、次のコードを追加します。このコードにより、操作ウィンドウ オブジェクトが 2 つ作成されます。

    Dim actionsPane1 As New ActionsPaneControl1()
    Dim actionsPane2 As New ActionsPaneControl2()
    
    ActionsPaneControl1 actionsPane1 = new ActionsPaneControl1();
    ActionsPaneControl2 actionsPane2 = new ActionsPaneControl2();
    
  3. C# では、コンストラクタに次のイベント ハンドラを追加する必要があります。イベンド ハンドラの作成方法の詳細については、「方法 : Visual Studio Tools for Office でイベント ハンドラを作成する」を参照してください。

    this.button1.Click += new System.EventHandler
        <Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs>
            (this.button1_Click);
    this.button2.Click += new System.EventHandler
        <Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs>
            (this.button2_Click);
    this.toggleButton1.Click += new System.EventHandler
        <Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs>
            (this.toggleButton1_Click);
    this.Load += new System.EventHandler
        <Microsoft.Office.Tools.Ribbon.RibbonUIEventArgs>
            (this.MyRibbon_Load);
    
  4. MyRibbon_Load イベントに次のコードを追加します。このコードにより、操作ウィンドウの Microsoft.Office.Tools.ActionsPane.Controls コレクションに操作ウィンドウ オブジェクトが追加され、オブジェクトが非表示になります。

    Private Sub MyRibbon_Load(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonUIEventArgs) _
            Handles MyBase.Load
    
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1)
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2)
        actionsPane1.Hide()
        actionsPane2.Hide()
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False
    End Sub
    
    
    private void MyRibbon_Load(object sender, RibbonUIEventArgs e)
    {
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1);
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2);
        actionsPane1.Hide();
        actionsPane2.Hide();
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
    }
    
  5. MyRibbon クラスに、次の 3 つのイベント ハンドラ メソッドを追加します。これらのメソッドは、2 つのボタンの Click イベントと、トグル ボタンの Click イベントを処理します。button1 と button2 のイベント ハンドラにより、別の操作ウィンドウが表示されます。toggleButton1 のイベント ハンドラにより、アクティブな操作ウィンドウの表示/非表示が切り替えられます。

    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _
            Handles Button1.Click
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
        actionsPane2.Hide()
        actionsPane1.Show()
    End Sub
    
    Private Sub Button2_Click(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _
            Handles Button2.Click
    
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
        actionsPane1.Hide()
        actionsPane2.Show()
    
    End Sub
    
    
    Private Sub ToggleButton1_Click(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _
            Handles ToggleButton1.Click
    
        If ToggleButton1.Checked Then
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False
        Else
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
        End If
    
    End Sub
    
    private void button1_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane2.Hide();
        actionsPane1.Show();
    }
    
    private void button2_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane1.Hide();
        actionsPane2.Show();
    
    }
    
    private void toggleButton1_Click(object sender, RibbonControlEventArgs e)
    {
        if (toggleButton1.Checked == true)
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
        }
        else
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        }
    
    }
    

カスタム タブのテスト

プロジェクトを実行し、Excel を起動して、リボンに [アドイン] タブを表示します。[アドイン] のボタンをクリックして、操作ウィンドウの表示/非表示を切り替えます。

カスタム タブをテストするには

  1. F5 キーを押してプロジェクトを実行します。

  2. [アドイン] タブをクリックします。

  3. [Actions Pane Manager] グループで、[Show Actions Pane 1] をクリックします。

    操作ウィンドウが表示され、Actions Pane 1 というラベルが表示されます。

  4. [Show Actions Pane 2] をクリックします。

    操作ウィンドウが表示され、Actions Pane 2 というラベルが表示されます。

  5. [Hide Actions Pane] をクリックします。

    操作ウィンドウが表示されなくなります。

次の手順

Office UI をカスタマイズする方法の詳細については、次のトピックで説明します。

参照

処理手順

方法 : リボンのカスタマイズの概要

方法 : リボンのタブ オーダーを変更する

方法 : 組み込みタブをカスタマイズする

方法 : Microsoft Office メニューをカスタマイズする

概念

実行時のリボンへのアクセス

リボンの概要

リボン デザイナ

Outlook のリボンのカスタマイズ

リボン オブジェクト モデルの概要