この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
ページ更新者:T
更新日時:2020-04-27 09:45:54

タイトル: 「はい」、「いいえ」、「キャンセル」ボタンの設置と処理分岐
SEOタイトル: 【Revit API】「はい」、「いいえ」、「キャンセル」ボタンの設置と処理分岐

ボタン設置と処理分岐の実装は以下の通り。

using System;
using Autodesk.Revit;
using Autodesk.Revit.DB;
using Autodesk.Revit.UI.Selection;
using Autodesk.Revit.UI;
using Autodesk.Revit.Attributes;
using System.Collections.Generic;

namespace TestTool
{
    [Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Manual)]
    public class TestTool : IExternalCommand
    {
        public Autodesk.Revit.UI.Result Execute(ExternalCommandData commandData,
            ref string message, ElementSet elements)
        {
            TaskDialog taskDialog = new TaskDialog("Revit");

            taskDialog.MainContent =
                ("Click Yes to return Succeeded. \t\n" +
                "Click No to return Failed. \t\n" +
                "Click Cancel to return Cancelled.  \t\n");

            TaskDialogCommonButtons buttons = TaskDialogCommonButtons.Yes |
                TaskDialogCommonButtons.No | TaskDialogCommonButtons.Cancel;

            taskDialog.CommonButtons = buttons;

            TaskDialogResult taskDialogResult = taskDialog.Show();

            if (taskDialogResult == TaskDialogResult.Yes)
            {
                return Autodesk.Revit.UI.Result.Succeeded;
            }
           
else if (taskDialogResult == TaskDialogResult.No)
            {
                message = "Failed";
                return Autodesk.Revit.UI.Result.Failed;
            }
           
else if (taskDialogResult == TaskDialogResult.Cancel)
            {
                message = "Cancelled";
                return Autodesk.Revit.UI.Result.Cancelled;
            }
            else
            {
                message = "Unexpected";
                return Autodesk.Revit.UI.Result.Failed;
            }
        }
    }
}

 

 

ツールを起動すると以下のダイアログが表示されるのでいずれかのボタンを押す。